Skip to main content

Non-real-time speech synthesis

Non-real-time speech synthesis converts text to speech through the HTTP API. It is designed for latency-tolerant scenarios such as audiobook production, online education voiceovers, and content creation, and supports a wide range of voices, multiple languages, voice cloning, and voice design.

Overview

Convert complete text into audio files through the HTTP API. Two output modes are available: non-streaming and streaming.
  • Non-streaming returns an audio file URL valid for 24 hours; streaming returns audio data in chunks.
  • Multiple languages are supported, including Chinese dialects.
  • Supports Voice cloning and Voice Design for creating custom voices.
  • Supports Instruction control to control speech expressiveness through natural language instructions.
  • Supports Emotion and rich language tags to embed tags in text for controlling emotional expression or inserting sound effects
The API endpoints differ by model series: Qwen-Audio-TTS and CosyVoice use https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/services/audio/tts/SpeechSynthesizer; Qwen-TTS uses https://dashscope.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation; MiniMax uses https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation. The endpoints are not interchangeable. Use the endpoint shown in the examples of each model series.
For low-latency streaming scenarios, see Real-time speech synthesis. For model selection recommendations, see Speech synthesis.
Audio synthesized on the Voice Design page in the Model Studio console can only be previewed online and cannot be downloaded as an audio file. To download the audio, call the API or the SDK.

Prerequisites

Before you begin, complete the following preparations:

Quick start

The following tabs demonstrate speech synthesis for each model series. For more language examples and detailed parameter descriptions, see API reference.
  • Qwen-Audio-TTS
  • CosyVoice
  • MiniMax
The following examples demonstrate how to synthesize speech with Qwen-Audio-TTS models.
  • Non-streaming output
  • Streaming output
In non-streaming mode, the response contains a URL to the synthesized audio file. The URL is valid for 24 hours.
curl -X POST https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/services/audio/tts/SpeechSynthesizer \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
    "model": "qwen-audio-3.0-tts-flash",
    "input": {
      "text": "There is a large garden behind my house.",
      "voice": "longanhuan_v3.6",
      "format": "wav",
      "sample_rate": 24000
    }
}'

Advanced features

Instruction control

Instruction specifications by model:
  • Qwen-Audio-TTS
  • CosyVoice
Supported models: qwen-audio-3.1-tts-flash, qwen-audio-3.0-tts-plus, qwen-audio-3.0-tts-flashSystem voices and voice cloning voices: accept any instruction.

Dialects

This section describes how to generate speech in Chinese dialects (such as Henan dialect and Sichuan dialect). The configuration method varies by model and voice type.
  • Qwen-Audio-TTS
  • CosyVoice
  • Qwen-TTS
  • System voices: Choose one of the following voice types:
    • System voices that support dialects natively — no additional configuration required.
    • Voices that support Instruction control and allow dialect specification — specify the dialect through instruction text.
  • Voice cloning voices: Configure through the Instruction control feature. For example, set the instruction text to 请用河南话表达.
  • Voice design voices: Dialects are not supported.
Supported dialects: See the "Supported languages" section for each model in Qwen-Audio-TTS.

Emotion and rich language tags

Qwen-Audio-TTS series models support embedding emotion and rich language tags directly in the text to synthesize (the text parameter). These tags control emotional expression or insert vocal effects (such as laughter and sighs) at specified positions, producing more expressive speech without configuring complex audio parameters.
Supported models: Only qwen-audio-3.1-tts-flash, qwen-audio-3.0-tts-plus and qwen-audio-3.0-tts-flash.
Control tags Control tags set the emotion or style of the speech. Place a tag in the text to affect all subsequent text until the next control tag appears or the sentence is automatically segmented due to length.

Tag

Description

[sad]

Sad

[amazed]

Amazed

[deep and loud shouting]

Deep, loud shouting

[trembling]

Trembling

[angry]

Angry

[excited]

Excited

[sarcastic]

Sarcastic

[curious]

Curious

[like dracula]

Dracula style (deep, eerie)

[bored]

Bored

[tired]

Tired

[scornful]

Scornful

[shouting]

Shouting

[asmr]

ASMR soft whisper

[panicked]

Panicked

[mischievously]

Mischievous

[empathetic]

Empathetic

[whispers]

Whisper

[reluctantly]

Reluctant

[crying]

Crying

[serious]

Serious

[very slowly]

Very slow speech

[very fast]

Very fast speech

Rich language tags Rich language tags insert a vocal effect at the current position in the text without affecting the emotional style of surrounding text.

Tag

Description

[gasp]

Gasp

[sighing]

Sigh

[clears throat]

Throat clearing

[giggles]

Giggle

[laughing]

Laughter

[cough]

Cough

[snorts]

Snort

Usage examples The following example shows how to combine control tags and rich language tags in the text parameter: [excited]What a beautiful day today![laughing]Let's go out and have fun together! In this text, [excited] is a control tag that applies an excited emotion to all subsequent text. [laughing] is a rich language tag that inserts a laugh at that position before continuing to synthesize the remaining text. You can also switch between different emotions within the same text: [serious]Please pay attention to the safety precautions.[excited]Alright, let's get started now! Here, [serious] sets the first sentence to a serious tone, and [excited] switches to an excited tone starting from the second sentence.

Supported models and regions

  • China (Beijing)
  • Singapore
To call the following models, use an API key for the Beijing region:
  • Qwen-Audio-TTS: qwen-audio-3.0-tts-plus, qwen-audio-3.1-tts-flash, qwen-audio-3.0-tts-flash
  • CosyVoice: cosyvoice-v3.5-plus, cosyvoice-v3.5-flash, cosyvoice-v3-plus, cosyvoice-v3-flash, cosyvoice-v2
  • Qwen-TTS:
    • Qwen3-TTS-Flash: qwen3-tts-flash (stable version)
  • MiniMax: MiniMax/speech-2.8-hd, MiniMax/speech-02-hd, MiniMax/speech-2.8-turbo, MiniMax/speech-02-turbo

Supported system voices

Different models support different voices. Set the voice request parameter to a value from the voice parameter column in the following tables.

API reference

FAQ

Q: How long is the audio file URL valid?

A: The audio file URL is valid for 24 hours after generation. After the URL expires, call the API again to obtain a new URL.
Token Plan
Model Playground
Fine-tuning
Model Compression
Statistics and Monitoring
Support