MiniMax: Speech 2.6 HD
Speech 2.6 HD is a MiniMax text-to-speech model for turning a finished script into audio. The minimax/speech-2.6-hd edition exposes voice, delivery and audio-format controls, with a complete JSON response and a choice of URL or hexadecimal audio output. Use it to render a supplied narration, learning passage or product walkthrough as speech.
About the model
This description covers the model’s capabilities. Available in Ailoot inputs, outputs and options are listed for the selected method below.
Speech 2.6 HD is the exact MiniMax speech edition selected by model: "minimax/speech-2.6-hd". Use POST /v1/audio/speech with an application/json body containing model and the text to speak. Its input is a written script and its result is synthesized audio. For a learning passage, prepare the exact explanation and examples to be read aloud. For a product walkthrough, write the spoken sequence in the same order as the visible steps. A narration script can include complete sentences and deliberate punctuation; keep editorial instructions that should stay silent outside text.
The text field must be nonblank and contain fewer than 10,000 Unicode characters. Send the complete spoken script with stream:false, or omit stream. Divide longer material into separate complete script segments before submitting each segment. A document can be used by reading its actual contents and placing the relevant passage in text; a document URL is not a substitute for the script.
Choose a voice through voice_setting.voice_id. The documented voice categories include system voices and already-created cloned or text-designed voices; use a valid voice ID for the selected category. The example voice is audiobook_male_1. The same object controls speed from 0.5 to 2, vol above 0 and up to 10, and integer pitch from -12 to 12. Their defaults are 1, 1 and 0. These controls adjust different aspects of the spoken delivery, so choose them separately rather than placing their names in the script.
voice_setting.emotion accepts happy, sad, angry, fearful, disgusted, surprised, calm and fluent. The documentation also describes automatic emotion matching from the text. For number-heavy scripts, voice_setting.text_normalization enables Chinese and English text normalization and defaults to false. voice_setting.latex_read controls reading LaTeX expressions and also defaults to false. pronunciation_dict.tone is an array of pronunciation-rule strings. The published example is ["草地/(cao3)(di1)"]; retain the word, slash and parenthesized pronunciation structure when supplying a rule.
audio_setting.format accepts mp3, pcm, flac and wav, with mp3 as the default. sample_rate accepts 8000, 16000, 22050, 24000, 32000 and 44100 Hz; its default is 32000. channel is 1 for mono or 2 for two channels, defaulting to 1. The bitrate values are 32000, 64000, 128000 and 256000 bits per second, defaulting to 128000, and apply to mp3. Select the encoding needed by the player or editing tool that will consume the result.
language_boost is an optional string and defaults to null. Its allowed values are Chinese, Chinese,Yue, English, Arabic, Russian, Spanish, French, Portuguese, German, Turkish, Dutch, Ukrainian, Vietnamese, Indonesian, Japanese, Italian, Korean, Thai, Polish, Romanian, Greek, Czech, Finnish, Hindi, Bulgarian, Danish, Hebrew, Malay, Persian, Slovak, Swedish, Croatian, Filipino, Hungarian, Norwegian, Slovenian, Catalan, Nynorsk, Tamil, Afrikaans and auto. "Chinese,Yue" is one value. It is a separate control from the script and voice ID. The schema also exposes timber_weights for a list of voice_id and integer weight pairs, with each weight from 1 to 100. Preserve the parameter spelling timber_weights when preparing a request. voice_modify.sound_effects is an optional string with values spacious_echo, auditorium_echo, lofi_telephone and robotic.
stream defaults to false. For a complete response, output_format selects url or hex and defaults to hex. In the documented JSON result, data.audio carries the selected representation: download the complete signed Ailoot URL, including its query string, or decode the complete hexadecimal audio into bytes. Retain the original result together with data.status, base_resp, trace_id and extra_info, which includes the actual audio format, sample rate, channel count, size and usage_characters.
subtitle_enable is a boolean that defaults to false and applies to non-streaming output. aigc_watermark is a boolean that defaults to false and controls an audible rhythm marker at the end of the generated audio. Keep every returned audio or subtitle result, and check pronunciation, numbers and the completed file before placing it in the application. If delivery is uncertain, retain the original request identifier and response for checking the existing attempt. Ailoot also saves the completed audio in your media library. With output_format:"url", data.audio contains a signed link to that saved asset; the asset ID appears in its /v1/media/assets/{asset_id}/content path. Ailoot signed file links last 24 hours from issue. Use the same API key to GET /v1/media/assets?family=audio and follow every next_cursor to locate the audio asset records. Read GET /v1/media/assets/{asset_id} for each selected record and download its exact content_url, including the query string. If a file request returns 404 with code link_expired, read the same asset again for a refreshed content_url. Refresh the saved result rather than generating audio again to replace an expired link.
Ailoot Ultra · Speech POST /v1/audio/speech minimax/speech-2.6-hd
minimax/speech-2.6-hdOverview
Speech 2.6 HD is a MiniMax text-to-speech model for turning a finished script into audio. The minimax/speech-2.6-hd edition exposes voice, delivery and audio-format controls, with a complete JSON response and a choice of URL or hexadecimal audio output. Use it to render a supplied narration, learning passage or product walkthrough as speech.
- Accepted inputs
- Text
- Results
- Audio
Available in Ailoot · inputs & methods
Ailoot Ultra · Speech POST /v1/audio/speech
- Input types
text- Output types
audio- Output format
- mp3,pcm,flac,wav
| Field | Type | Requirement | Values & limits | Default |
|---|---|---|---|---|
Fieldmodel | Typestring | RequirementRequired | Values & limits minimax/speech-2.6-hd | Default— |
Fieldtext | Typestring | RequirementRequired | Values & limits | Default— |
Fieldstream | Typeboolean | RequirementOptional | Values & limits false | Defaultfalse |
Fieldvoice_setting | Typeobject | RequirementOptional | Values & limits | Default— |
Fieldvoice_setting.voice_id | Typestring | RequirementOptional | Values & limits | Default— |
Fieldvoice_setting.speed | Typenumber | RequirementOptional | Values & limits Minimum: 0.5 Maximum: 2 | Default1 |
Fieldvoice_setting.vol | Typenumber | RequirementOptional | Values & limits Minimum: 0 Maximum: 10 | Default1 |
Fieldvoice_setting.pitch | Typeinteger | RequirementOptional | Values & limits Minimum: -12 Maximum: 12 | Default0 |
Fieldvoice_setting.emotion | Typestring | RequirementOptional | Values & limits happy, sad, angry, fearful, disgusted, surprised, calm, fluent | Default— |
Fieldvoice_setting.text_normalization | Typeboolean | RequirementOptional | Values & limits | Defaultfalse |
Fieldvoice_setting.latex_read | Typeboolean | RequirementOptional | Values & limits | Defaultfalse |
Fieldaudio_setting | Typeobject | RequirementOptional | Values & limits | Default— |
Fieldaudio_setting.sample_rate | Typeinteger | RequirementOptional | Values & limits 8,000, 16,000, 22,050, 24,000, 32,000, 44,100 | Default32,000 |
Fieldaudio_setting.bitrate | Typeinteger | RequirementOptional | Values & limits 32,000, 64,000, 128,000, 256,000 | Default128,000 |
Fieldaudio_setting.format | Typestring | RequirementOptional | Values & limits mp3, pcm, flac, wav | Defaultmp3 |
Fieldaudio_setting.channel | Typeinteger | RequirementOptional | Values & limits 1, 2 | Default1 |
Fieldaudio_setting.force_cbr | Typeboolean | RequirementOptional | Values & limits | Defaultfalse |
Fieldpronunciation_dict | Typeobject | RequirementOptional | Values & limits | Default— |
Fieldpronunciation_dict.tone | Typearray | RequirementOptional | Values & limits | Default— |
Fieldtimber_weights | Typearray | RequirementOptional | Values & limits | Default— |
Fieldlanguage_boost | Typestring | RequirementOptional | Values & limits Chinese, Chinese,Yue, English, Arabic, Russian, Spanish, French, Portuguese, German, Turkish, Dutch, Ukrainian, Vietnamese, Indonesian, Japanese, Italian, Korean, Thai, Polish, Romanian, Greek, Czech, Finnish, Hindi, Bulgarian, Danish, Hebrew, Malay, Persian, Slovak, Swedish, Croatian, Filipino, Hungarian, Norwegian, Slovenian, Catalan, Nynorsk, Tamil, Afrikaans, auto | Default— |
Fieldvoice_modify | Typeobject | RequirementOptional | Values & limits | Default— |
Fieldvoice_modify.pitch | Typeinteger | RequirementOptional | Values & limits -100, 100 | Default— |
Fieldvoice_modify.intensity | Typeinteger | RequirementOptional | Values & limits -100, 100 | Default— |
Fieldvoice_modify.timbre | Typeinteger | RequirementOptional | Values & limits -100, 100 | Default— |
Fieldvoice_modify.sound_effects | Typestring | RequirementOptional | Values & limits spacious_echo, auditorium_echo, lofi_telephone, robotic | Default— |
Fieldsubtitle_enable | Typeboolean | RequirementOptional | Values & limits | Defaultfalse |
Fieldoutput_format | Typestring | RequirementOptional | Values & limits url, hex | Defaulthex |
Fieldaigc_watermark | Typeboolean | RequirementOptional | Values & limits | Defaultfalse |
Method parameters and lifecycle
| Parameter | Contract |
|---|---|
Parametercontent_type | Contractapplication/json |
Parameterrequired | Contractmodel, text |
Parameteroptional | Contractstream, voice_setting, audio_setting, pronunciation_dict, timber_weights, language_boost, voice_modify, subtitle_enable, output_format, aigc_watermark |
Parametermaterial_types | Contracttext |
Parameterconditions | ContractUse text, not input or contents. Fewer than 10000 Unicode characters; stream is false or omitted., PCM is raw audio with its returned sample geometry; do not invent a WAV header or bit depth. |
Lifecycle: synchronous_result_then_owned_library
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Pricing
Tariff references do not add request options. Supported parameters are listed for the selected method.
- Fast mode
- Not specified When fast mode is selected
- Flex mode
- Not specified When flex mode is selected
- Maximum reasoning effort
- Not specified When maximum reasoning effort uses the default adjustment
Ailoot rates
Prices by configuration
Match each charge to the conditions shown. Use one rate for each set of alternative configurations.
| Configuration | Rate schedule | Billing unit | Charge |
|---|---|---|---|
| ConfigurationBase token rates | Rate scheduleBase rate | Billing unit— | Charge Input · Input tokens — / 1K tokens Output · Output tokens — / 1K tokens Input · Cache read — / 1K tokens Input · Cache write — / 1K tokens Input · Cache write, 1 hour — / 1K tokens |
| Configurationinput character | Rate schedule— | Billing unitper input character | Charge Input · input character $0.0002 per input character |
Ailoot reserves an estimated amount before a request. After the result, it settles the final charge from measured usage. Streaming settlement uses the final usage record. How reservation and settlement work →
Example requests
Ailoot Ultra · Speech
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "minimax/speech-2.6-hd", "text": "Hello, this is a short speech example.", "stream": false, "output_format": "hex", "audio_setting": {"format": "mp3", "sample_rate": 32000, "channel": 1}}')
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/speech \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
# Submit once. Retain the complete result, original identifiers and every response header.
Receive and save results
Ailoot Ultra · Speech
mp3,pcm,flac,wav
GET /v1/media/assetsGET /v1/media/assets/{asset_id}
Keep all completed results
Keep every complete returned response, file and content part.
Retain the full JSON. Decode every hex audio byte or use the returned owned URL. Keep the actual format, sample rate, channel count and usage_characters.
If the original response needs checking
Preserve the original response, headers and X-Client-Request-ID. An uncertain outcome does not authorize another creation.
Response fields
| Field | Type |
|---|---|
Fielddata.audio | Typestring |
Fieldextra_info | Typeobject |
Fieldtrace_id | Typestring |
Aliases
Model aliases
Ailoot Ultra minimax/speech-2.6-hd
Method path aliases
Use the method paths shown above.
Related caller IDs
FAQ · MiniMax: Speech 2.6 HD
- What inputs and results are available?
POST /v1/audio/speech·minimax/speech-2.6-hd:text→audio- Which fields does the request use?
POST /v1/audio/speech·minimax/speech-2.6-hd:model,text,stream,voice_setting,audio_setting,pronunciation_dict,timber_weights,language_boost,voice_modify,subtitle_enable,output_format,aigc_watermark- What limits apply?
POST /v1/audio/speech·minimax/speech-2.6-hd:voice_setting.speed.minimum:0.5;voice_setting.speed.maximum:2;voice_setting.vol.minimum:0;voice_setting.vol.maximum:10;voice_setting.pitch.minimum:-12;voice_setting.pitch.maximum:12