{"id":99532,"date":"2026-06-05T20:15:56","date_gmt":"2026-06-05T17:15:56","guid":{"rendered":"https:\/\/vpesports.com\/minecraft\/mods\/mcmti\/"},"modified":"2026-06-05T20:15:56","modified_gmt":"2026-06-05T17:15:56","slug":"mcmti","status":"publish","type":"mod","link":"https:\/\/vpesports.com\/minecraft\/mods\/mcmti\/","title":{"rendered":"Microphone Text Input"},"content":{"rendered":"<p># Microphone Text Input Mod User Documention<\/p>\n<p>Architectury 2.x<\/p>\n<p>![icon](https:\/\/cdn.modrinth.com\/data\/ynA13Vjn\/images\/587e3865ea30e4479fbc845d334215a9b6e6737a.png)<\/p>\n<p>## Introduction<\/p>\n<p>The Microphone Text Input Mod is a Fabric mod designed for Minecraft clients. It provides speech recognition input<br \/>\nfunctionality and automatically converts spoken words into text chat messages, enhancing the in &#8211; game communication<br \/>\nexperience.<\/p>\n<p>## Features<\/p>\n<p>&#8211; **Multiple Modes**: Supports different operation modes, including `AUTO_SEND`, `RELEASE_KEY_TO_SEND`, and<br \/>\n  `RELEASE_KEY_TO_INPUT`.<br \/>\n&#8211; **Advanced Configuration**: Allows users to adjust advanced parameters related to the Whisper library, such as the<br \/>\n  number of threads, audio context size, and sampling strategy.<\/p>\n<p>## Dependencies<\/p>\n<p>| Dependency Name  | Fabric                                                           | NeoForge                                                                          |<br \/>\n|&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;|&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;|&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;|<br \/>\n| Java             | 21                                                               | 21                                                                                |<br \/>\n| Fabric API       | see [fabric.mod.json](fabric\/src\/main\/resources\/fabric.mod.json) | \u274c                                                                                 |<br \/>\n| Architectury API | \u274c                                                                | see [neoforge.mods.toml](neoforge\/src\/main\/resources\/META-INF\/neoforge.mods.toml) |<br \/>\n| MidnightLib      | see [fabric.mod.json](fabric\/src\/main\/resources\/fabric.mod.json) | see [neoforge.mods.toml](neoforge\/src\/main\/resources\/META-INF\/neoforge.mods.toml) |<\/p>\n<p>## Configuration<\/p>\n<p>### Keybinding<\/p>\n<p>| Keybinding Name | Recognize                        |<br \/>\n|&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;|&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-|<br \/>\n| Category        | `key.category.minecraft.mcmti`   |<br \/>\n| Translation Key | `key.mcmti.recognize`            |<br \/>\n| Default Key     | `V`                              |<\/p>\n<p>### General Settings<\/p>\n<p>| Setting                   | Translation Key                         | Field                                                    | Type                                         | Default Value                            | Description                                                                                 |<br \/>\n|&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;|&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;|&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-|&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-|&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;|&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;|<br \/>\n| GGML Whisper Model        | `mcmti.midnightconfig.model`            | `me.jaffe2718.mcmti.config.McmtiConfig.model`            | `String`                                     | `&#8221;&#8221;`                                     | Path to the GGML Whisper model.                                                             |<br \/>\n| Language                  | `mcmti.midnightconfig.language`         | `me.jaffe2718.mcmti.config.McmtiConfig.language`         | `String`                                     | `&#8221;en&#8221;`                                   | Language for speech recognition.                                                            |<br \/>\n| Mode                      | `mcmti.midnightconfig.mode`             | `me.jaffe2718.mcmti.config.McmtiConfig.mode`             | `me.jaffe2718.mcmti.config.McmtiConfig.Mode` | `&#8221;RELEASE_KEY_TO_SEND&#8221;`                  | Mod&#8217;s work mode.                                                                            |<br \/>\n| Record Cycle (ms)         | `mcmti.midnightconfig.recordCycleMs`    | `me.jaffe2718.mcmti.config.McmtiConfig.recordCycleMs`    | `int`                                        | `5000`                                   | Record cycle in milliseconds.                                                               |<br \/>\n| Record Buffer Size (byte) | `mcmti.midnightconfig.recordBufferSize` | `me.jaffe2718.mcmti.config.McmtiConfig.recordBufferSize` | `int`                                        | `1024`                                   | Record buffer size in bytes.                                                                |<br \/>\n| Prefix                    | `mcmti.midnightconfig.prefix`           | `me.jaffe2718.mcmti.config.McmtiConfig.prefix`           | `String`                                     | `&#8221;\u2308Speech Input\u230b&#8221;`                       | Prefix added to the recognized text.                                                        |<br \/>\n| Draft Input               | `mcmti.midnightconfig.draftInput`       | `me.jaffe2718.mcmti.config.McmtiConfig.draftInput`       | `boolean`                                    | `false`                                  | Enable draft input. If enabled, the recognized text will be shown in the entry as a draft.  |<br \/>\n| Encoding Repair           | `mcmti.midnightconfig.encodingRepair`   | `me.jaffe2718.mcmti.config.McmtiConfig.encodingRepair`   | `boolean`                                    | `false`                                  | Enable encoding repair.                                                                     |<br \/>\n| Source Encoding           | `mcmti.midnightconfig.srcEncoding`      | `me.jaffe2718.mcmti.config.McmtiConfig.srcEncoding`      | `String`                                     | `Charset.defaultCharset().displayName()` | Source encoding for text. Applies only if encoding repair is enabled.                       |<br \/>\n| Destination Encoding      | `mcmti.midnightconfig.dstEncoding`      | `me.jaffe2718.mcmti.config.McmtiConfig.dstEncoding`      | `String`                                     | `Charset.defaultCharset().displayName()` | Destination encoding for text. Applies only if encoding repair is enabled.                  |<\/p>\n<p>### Advanced Settings<\/p>\n<p>| Setting                      | Translation Key                                     | Field                                                                | Type                                                           | Default Value | Description                                                                         |<br \/>\n|&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;|&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;|&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-|&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-|&#8212;&#8212;&#8212;&#8212;&#8212;|&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-|<br \/>\n| Enable Advanced Config       | `mcmti.midnightconfig.advancedConfig`               | `me.jaffe2718.mcmti.config.McmtiConfig.advancedConfig`               | `boolean`                                                      | `false`       | Enable advanced configuration.                                                      |<br \/>\n| nThreads                     | `mcmti.midnightconfig.nThreads`                     | `me.jaffe2718.mcmti.config.McmtiConfig.nThreads`                     | `int`                                                          | `0`           | Number of threads to use for the operation of the Whisper model. `0` for max cores. |<br \/>\n| audioCtx                     | `mcmti.midnightconfig.audioCtx`                     | `me.jaffe2718.mcmti.config.McmtiConfig.audioCtx`                     | `int`                                                          | `0`           | Audio context size for the Whisper model. `0` means use default.                    |<br \/>\n| nMaxTextCtx                  | `mcmti.midnightconfig.nMaxTextCtx`                  | `me.jaffe2718.mcmti.config.McmtiConfig.nMaxTextCtx`                  | `int`                                                          | `16384`       | Max tokens to use from past text as prompt for the decoder.                         |<br \/>\n| offsetMs                     | `mcmti.midnightconfig.offsetMs`                     | `me.jaffe2718.mcmti.config.McmtiConfig.offsetMs`                     | `int`                                                          | `0`           | Offset in ms to start recording from.                                               |<br \/>\n| durationMs                   | `mcmti.midnightconfig.durationMs`                   | `me.jaffe2718.mcmti.config.McmtiConfig.durationMs`                   | `int`                                                          | `0`           | Audio duration to process in ms. `0` means use default.                             |<br \/>\n| translate                    | `mcmti.midnightconfig.translate`                    | `me.jaffe2718.mcmti.config.McmtiConfig.translate`                    | `boolean`                                                      | `false`       | Translate the text to the default language.                                         |<br \/>\n| noTimestamps                 | `mcmti.midnightconfig.noTimestamps`                 | `me.jaffe2718.mcmti.config.McmtiConfig.noTimestamps`                 | `boolean`                                                      | `false`       | Do not generate timestamps.                                                         |<br \/>\n| initialPrompt                | `mcmti.midnightconfig.initialPrompt`                | `me.jaffe2718.mcmti.config.McmtiConfig.initialPrompt`                | `String`                                                       | `&#8221;&#8221;`          | Initial text to use as a prompt for the whisper.                                    |<br \/>\n| noContext                    | `mcmti.midnightconfig.noContext`                    | `me.jaffe2718.mcmti.config.McmtiConfig.noContext`                    | `boolean`                                                      | `true`        | Do not use past transcription (if any) as initial prompt for the decoder.           |<br \/>\n| singleSegment                | `mcmti.midnightconfig.singleSegment`                | `me.jaffe2718.mcmti.config.McmtiConfig.singleSegment`                | `boolean`                                                      | `false`       | Force single segment output (useful for streaming).                                 |<br \/>\n| printSpecial                 | `mcmti.midnightconfig.printSpecial`                 | `me.jaffe2718.mcmti.config.McmtiConfig.printSpecial`                 | `boolean`                                                      | `false`       | Print special tokens.                                                               |<br \/>\n| printProgress                | `mcmti.midnightconfig.printProgress`                | `me.jaffe2718.mcmti.config.McmtiConfig.printProgress`                | `boolean`                                                      | `true`        | Print progress information.                                                         |<br \/>\n| printRealtime                | `mcmti.midnightconfig.printRealtime`                | `me.jaffe2718.mcmti.config.McmtiConfig.printRealtime`                | `boolean`                                                      | `false`       | Print results from within whisper.cpp (avoid it, use callback instead).             |<br \/>\n| printTimestamps              | `mcmti.midnightconfig.printTimestamps`              | `me.jaffe2718.mcmti.config.McmtiConfig.printTimestamps`              | `boolean`                                                      | `true`        | Print timestamps for each text segment when printing realtime.                      |<br \/>\n| suppressBlank                | `mcmti.midnightconfig.suppressBlank`                | `me.jaffe2718.mcmti.config.McmtiConfig.suppressBlank`                | `boolean`                                                      | `true`        | Decoder option.                                                                     |<br \/>\n| suppressNonSpeechTokens      | `mcmti.midnightconfig.suppressNonSpeechTokens`      | `me.jaffe2718.mcmti.config.McmtiConfig.suppressNonSpeechTokens`      | `boolean`                                                      | `true`        | Tokenizer option.                                                                   |<br \/>\n| temperature                  | `mcmti.midnightconfig.temperature`                  | `me.jaffe2718.mcmti.config.McmtiConfig.temperature`                  | `float`                                                        | `0.0f`        | Initial decoding temperature.                                                       |<br \/>\n| maxInitialTs                 | `mcmti.midnightconfig.maxInitialTs`                 | `me.jaffe2718.mcmti.config.McmtiConfig.maxInitialTs`                 | `float`                                                        | `1.0f`        | Maximum initial timestamp.                                                          |<br \/>\n| lengthPenalty                | `mcmti.midnightconfig.lengthPenalty`                | `me.jaffe2718.mcmti.config.McmtiConfig.lengthPenalty`                | `float`                                                        | `-1.0f`       | Length penalty.                                                                     |<br \/>\n| temperatureInc               | `mcmti.midnightconfig.temperatureInc`               | `me.jaffe2718.mcmti.config.McmtiConfig.temperatureInc`               | `float`                                                        | `0.4f`        | Temperature increment.                                                              |<br \/>\n| entropyThold                 | `mcmti.midnightconfig.entropyThold`                 | `me.jaffe2718.mcmti.config.McmtiConfig.entropyThold`                 | `float`                                                        | `2.4f`        | Entropy threshold (similar to OpenAI&#8217;s &#8220;compression_ratio_threshold&#8221;).              |<br \/>\n| logprobThold                 | `mcmti.midnightconfig.logprobThold`                 | `me.jaffe2718.mcmti.config.McmtiConfig.logprobThold`                 | `float`                                                        | `-1.0f`       | Log probability threshold.                                                          |<br \/>\n| noSpeechThold                | `mcmti.midnightconfig.noSpeechThold`                | `me.jaffe2718.mcmti.config.McmtiConfig.noSpeechThold`                | `float`                                                        | `0.6f`        | No speech threshold.                                                                |<br \/>\n| greedyBestOf                 | `mcmti.midnightconfig.greedyBestOf`                 | `me.jaffe2718.mcmti.config.McmtiConfig.greedyBestOf`                 | `int`                                                          | `-1`          | Specific to greedy sampling strategy.                                               |<br \/>\n| beamSearchBeamSize           | `mcmti.midnightconfig.beamSearchBeamSize`           | `me.jaffe2718.mcmti.config.McmtiConfig.beamSearchBeamSize`           | `int`                                                          | `2`           | Specific to bean search sampling strategy.                                          |<br \/>\n| beamSearchPatience           | `mcmti.midnightconfig.beamSearchPatience`           | `me.jaffe2718.mcmti.config.McmtiConfig.beamSearchPatience`           | `float`                                                        | `-1.0f`       | Specific to bean search sampling strategy.                                          |<br \/>\n| grammar                      | `mcmti.midnightconfig.grammar`                      | `me.jaffe2718.mcmti.config.McmtiConfig.grammar`                      | `String`                                                       | `&#8221;&#8221;`          | Grammar file path. Empty means no grammar.                                          |<br \/>\n| grammarPenalty               | `mcmti.midnightconfig.grammarPenalty`               | `me.jaffe2718.mcmti.config.McmtiConfig.grammarPenalty`               | `float`                                                        | `100.0f`      | Penalty for non grammar tokens.                                                     |<br \/>\n| whisperSamplingStrategy      | `mcmti.midnightconfig.whisperSamplingStrategy`      | `me.jaffe2718.mcmti.config.McmtiConfig.whisperSamplingStrategy`      | `io.github.freshsupasulley.whisperjni.WhisperSamplingStrategy` | `BEAM_SEARCH` | The `WhisperContext` enum to configure whisper&#8217;s sampling strategy.                 |<br \/>\n| vad                          | `mcmti.midnightconfig.vad`                          | `me.jaffe2718.mcmti.config.McmtiConfig.vad`                          | `boolean`                                                      | `false`       | Enable VAD (Voice Activity Detection).                                              |<br \/>\n| vad__max_speech_duration_s   | `mcmti.midnightconfig.vad__max_speech_duration_s`   | `me.jaffe2718.mcmti.config.McmtiConfig.vad__max_speech_duration_s`   | `float`                                                        | `0f`          | Max duration of a speech segment before forcing a new segment.                      |<br \/>\n| vad__min_silence_duration_ms | `mcmti.midnightconfig.vad__min_silence_duration_ms` | `me.jaffe2718.mcmti.config.McmtiConfig.vad__min_silence_duration_ms` | `int`                                                          | `0`           | Min silence duration to consider speech as ended.                                   |<br \/>\n| vad__min_speech_duration_ms  | `mcmti.midnightconfig.vad__min_speech_duration_ms`  | `me.jaffe2718.mcmti.config.McmtiConfig.vad__min_speech_duration_ms`  | `int`                                                          | `0`           | Min duration for a valid speech segment.                                            |<br \/>\n| vad__samples_overlap         | `mcmti.midnightconfig.vad__samples_overlap`         | `me.jaffe2718.mcmti.config.McmtiConfig.vad__samples_overlap`         | `float`                                                        | `0f`          | Overlap in seconds when copying audio samples from speech segment.                  |<br \/>\n| vad__speech_pad_ms           | `mcmti.midnightconfig.vad__speech_pad_ms`           | `me.jaffe2718.mcmti.config.McmtiConfig.vad__speech_pad_ms`           | `int`                                                          | `0`           | Padding added before and after speech segments.                                     |<br \/>\n| vad__threshold               | `mcmti.midnightconfig.vad__threshold`               | `me.jaffe2718.mcmti.config.McmtiConfig.vad__threshold`               | `float`                                                        | `0f`          | Probability threshold to consider as speech.                                        |<br \/>\n| vad_model_path               | `mcmti.midnightconfig.vad_model_path`               | `me.jaffe2718.mcmti.config.McmtiConfig.vad_model_path`               | `String`                                                       | `&#8221;&#8221;`          | Path to the VAD model. Empty means use default.                                     |<br \/>\n| useCustomDynamicLib          | `mcmti.midnightconfig.useCustomDynamicLib`          | `me.jaffe2718.mcmti.config.McmtiConfig.useCustomDynamicLib`          | `boolean`                                                      | `false`       | Enable using custom dynamic library for Whisper.                                    |<br \/>\n| customDynamicLibDir          | `mcmti.midnightconfig.customDynamicLibDir`          | `me.jaffe2718.mcmti.config.McmtiConfig.customDynamicLibDir`          | `String`                                                       | `&#8221;&#8221;`          | Custom dynamic link library directory for Whisper.                                  |<\/p>\n<p>&#8211; For more info,<br \/>\n  see WhisperFullParams.java<\/p>\n<p>> WARNING: Activating the advanced configuration will change the default parameters of the Whisper model configuration,<br \/>\n> which will have a critical impact on the speech recognition results. Inappropriate configuration of advanced<br \/>\n> parameters can lead to problems such as speech recognition failure, high computer resource usage, and program crashes.<br \/>\n> Please use with caution.<\/p>\n<p>## Usage<\/p>\n<p>1. Install the mod and download the GGML Whisper model.<br \/>\n2. Configure the mod according to your needs in the configuration menu.<br \/>\n3. Use the keybinding you set (default is `V`) to start recording and speech recognition.<br \/>\n4. If the mode is set to `AUTO_SEND`, the recognized text will be automatically sent as a chat message. If set to<br \/>\n   `RELEASE_KEY_TO_SEND` or `RELEASE_KEY_TO_INPUT`, follow the corresponding key &#8211; release actions.<\/p>\n<p>### Use VAD<br \/>\nIf you want to use VAD (Voice Activity Detection), you need to download VAD model,<br \/>\nenable the advanced configuration and set the `vad_model_path` to the path of the VAD model in the configuration menu.<\/p>\n<p>### Custom Dynamic Library<\/p>\n<p>1. Download the custom dynamic library from Jaffe2718\/whisper-jni and extract the files.<br \/>\n2. Enable the advanced configuration and set the `useCustomDynamicLib` to `true` in the configuration menu.<br \/>\n3. Set the `customDynamicLibDir` to the directory where the custom dynamic library is located in the configuration menu.<br \/>\n4. If you want to use the dynamic library which is supported vulkan, check your check that your computer has drivers and libraries running Vulkan installed.<br \/>\n   &#8220;`shell<br \/>\n   vulkaninfo<br \/>\n   &#8220;`<br \/>\n5. If you want to use CUDA, check that your computer has drivers and libraries running CUDA installed.<br \/>\n   &#8220;`shell<br \/>\n   nvidia-smi<br \/>\n   &#8220;`<br \/>\n   For Linux, you need to install `CUDA Toolkit >= 12.4.0` and configure the environment variables.<br \/>\n   For Windows, if the game crashes, you have to force the game to use the `Java >= 25`, see Jaffe2718\/whisper-jni\/v0.5.6<\/p>\n<p>## Troubleshooting<\/p>\n<p>&#8211; **Crash on Startup**: Please check the compatibility and version of your use of the dynamic link library. You can disable the advanced configuration and set the `useCustomDynamicLib` to `false` to use the default dynamic library (CPU version).<br \/>\n&#8211; **Audio Input Device Load Failed**: Please check if Java has access to the audio input device.<br \/>\n&#8211; **Whisper Model Load Failed**: Make sure the path to the GGML Whisper model is correct.<\/p>\n<p>## Contributing<\/p>\n<p>If you&#8217;d like to contribute to this project, please feel free to submit issues or pull requests<br \/>\non GitHub.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This mod uses speech recognition technology to enable you to enter text using a microphone and send player messages.<br \/>\nPress the key v to perform voice recognition and automatically send a message.<\/p>\n","protected":false},"featured_media":99533,"template":"","meta":{"_minecraft_slug":"mcmti","_minecraft_project_id":"ynA13Vjn","_minecraft_author":"Jaffe2718","_minecraft_license":"MIT","_minecraft_downloads":10792,"_minecraft_follows":65,"_minecraft_client_side":"required","_minecraft_server_side":"unsupported","_minecraft_storage_type":"zip","_minecraft_archive_name":"mcmti.zip","_minecraft_size_bytes":962089827,"_minecraft_version_count":83,"_minecraft_updated_at":"2026-05-16T16:43:08.225976Z","_minecraft_date_created":"2023-03-25T05:40:06.280906Z","_minecraft_date_modified":"2026-05-14T08:26:43.475577Z","_minecraft_project_url":"https:\/\/modrinth.com\/mod\/mcmti","_minecraft_icon_attachment_id":99533,"_minecraft_imported_at":"2026-06-05T17:15:57+00:00","_minecraft_import_hash":"704578fdc304d0cbb5015218ab5cea9e","_minecraft_versions":"","_minecraft_links":"","_minecraft_gallery":"","_minecraft_api_metadata":""},"mod_category":[97,104,158,98,867,92],"mod_loader":[99,106,160,100],"minecraft_version":[56,57,58,59,36,60,94,101,102,62,37,40,41,38,78,79,80,81,82,83,167,163],"class_list":["post-99532","mod","type-mod","status-publish","has-post-thumbnail","hentry","mod_category-fabric","mod_category-forge","mod_category-neoforge","mod_category-quilt","mod_category-social","mod_category-utility","mod_loader-fabric","mod_loader-forge","mod_loader-neoforge","mod_loader-quilt","minecraft_version-1-19-2","minecraft_version-1-19-3","minecraft_version-1-19-4","minecraft_version-1-20","minecraft_version-1-20-1","minecraft_version-1-20-2","minecraft_version-1-20-4","minecraft_version-1-20-5","minecraft_version-1-20-6","minecraft_version-1-21","minecraft_version-1-21-1","minecraft_version-1-21-10","minecraft_version-1-21-11","minecraft_version-1-21-4","minecraft_version-1-21-5","minecraft_version-1-21-6","minecraft_version-1-21-7","minecraft_version-1-21-8","minecraft_version-1-21-9","minecraft_version-26-1","minecraft_version-26-1-1","minecraft_version-26-1-2"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Microphone Text Input - Minecraft<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vpesports.com\/minecraft\/mods\/mcmti\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Microphone Text Input - Minecraft\" \/>\n<meta property=\"og:description\" content=\"This mod uses speech recognition technology to enable you to enter text using a microphone and send player messages. Press the key v to perform voice recognition and automatically send a message.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vpesports.com\/minecraft\/mods\/mcmti\/\" \/>\n<meta property=\"og:site_name\" content=\"Minecraft\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/mcmti\\\/\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/mcmti\\\/\",\"name\":\"Microphone Text Input - Minecraft\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/mcmti\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/mcmti\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/mcmti-icon-587e3865ea30e4479fbc845d334215a9b6e6737a.png\",\"datePublished\":\"2026-06-05T17:15:56+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/mcmti\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/mcmti\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/mcmti\\\/#primaryimage\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/mcmti-icon-587e3865ea30e4479fbc845d334215a9b6e6737a.png\",\"contentUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/mcmti-icon-587e3865ea30e4479fbc845d334215a9b6e6737a.png\",\"width\":128,\"height\":128},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/mcmti\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mods\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Microphone Text Input\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\",\"name\":\"Minecraft\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Microphone Text Input - Minecraft","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vpesports.com\/minecraft\/mods\/mcmti\/","og_locale":"en_US","og_type":"article","og_title":"Microphone Text Input - Minecraft","og_description":"This mod uses speech recognition technology to enable you to enter text using a microphone and send player messages. Press the key v to perform voice recognition and automatically send a message.","og_url":"https:\/\/vpesports.com\/minecraft\/mods\/mcmti\/","og_site_name":"Minecraft","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/vpesports.com\/minecraft\/mods\/mcmti\/","url":"https:\/\/vpesports.com\/minecraft\/mods\/mcmti\/","name":"Microphone Text Input - Minecraft","isPartOf":{"@id":"https:\/\/vpesports.com\/minecraft\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/mcmti\/#primaryimage"},"image":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/mcmti\/#primaryimage"},"thumbnailUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/mcmti-icon-587e3865ea30e4479fbc845d334215a9b6e6737a.png","datePublished":"2026-06-05T17:15:56+00:00","breadcrumb":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/mcmti\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vpesports.com\/minecraft\/mods\/mcmti\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/vpesports.com\/minecraft\/mods\/mcmti\/#primaryimage","url":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/mcmti-icon-587e3865ea30e4479fbc845d334215a9b6e6737a.png","contentUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/mcmti-icon-587e3865ea30e4479fbc845d334215a9b6e6737a.png","width":128,"height":128},{"@type":"BreadcrumbList","@id":"https:\/\/vpesports.com\/minecraft\/mods\/mcmti\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/vpesports.com\/minecraft\/"},{"@type":"ListItem","position":2,"name":"Mods","item":"https:\/\/vpesports.com\/minecraft\/mods\/"},{"@type":"ListItem","position":3,"name":"Microphone Text Input"}]},{"@type":"WebSite","@id":"https:\/\/vpesports.com\/minecraft\/#website","url":"https:\/\/vpesports.com\/minecraft\/","name":"Minecraft","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vpesports.com\/minecraft\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod\/99532","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod"}],"about":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/types\/mod"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media\/99533"}],"wp:attachment":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media?parent=99532"}],"wp:term":[{"taxonomy":"mod_category","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_category?post=99532"},{"taxonomy":"mod_loader","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_loader?post=99532"},{"taxonomy":"minecraft_version","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/minecraft_version?post=99532"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}