Текст в речь

POST /v1/audio/speech возвращает само аудио, а не JSON: телом ответа является закодированный файл, а Content-Type следует за response_format, поэтому mp3 возвращается как audio/mpeg. Значимые поля — model, input и voice; speed и instructions необязательны, а имена голосов каждая модель публикует свои. Записывайте ответ сразу в файл — попытка декодировать его как текст его испортит.

POST /v1/audio/speech
curl https://api.chinaapi.ai/v1/audio/speech \
  -H "Authorization: Bearer $CHINAAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "step-tts-2",
    "input": "ChinaAPI text to speech verification.",
    "voice": "cixingnansheng",
    "response_format": "mp3"
  }' \
  --output speech.mp3

# HTTP 200, Content-Type: audio/mpeg
Клонирование голоса

step-tts-2

Вместе с step-tts-mini и stepaudio-2.5-tts. Все три клонируют голос примерно по десяти секундам референсного аудио и принимают указания по эмоции и подаче на естественном языке. step-tts-mini — вариант с низкой задержкой и низкой стоимостью.

Высокое качество

speech-2.8-hd

Вместе с speech-2.8-turbo. Вариант hd даёт наивысшую точность на этом эндпоинте и стоит соответственно; turbo частично меняет её на задержку примерно за половину цены.

Многоязычные

qwen3-tts-flash

Вместе с glm-tts. Обе многоязычны и стоят дешевле моделей с клонированием, что делает их разумным выбором по умолчанию, когда конкретный клонированный голос не нужен.

Голоса по умолчанию Поле voice можно не указывать: у каждой модели есть значение по умолчанию, которое мы отправим за вас — Cherry для qwen3-tts-flash, tongtong для glm-tts, cixingnansheng для step-tts-2, step-tts-mini и stepaudio-2.5-tts, и alloy для mimo-v2.5-tts и обеих моделей speech-2.8. Собственные названия голосов OpenAI принимаются везде; на китайских моделях они сворачиваются к значению по умолчанию этой модели, а не отклоняются, поэтому существующий клиент OpenAI работает с этим эндпоинтом без изменений. Это значения по умолчанию, а не полный список — каждый поставщик публикует больше. Два варианта не принимают название голоса вовсе: mimo-v2.5-tts-voiceclone читает образец из voice в виде data URL, а mimo-v2.5-tts-voicedesign принимает описание в instructions.
Совет Тарификация считает символы поля input, один символ за один токен, поэтому стоимость известна ещё до отправки запроса. Созданное аудио тоже измеряется и отображается как completion-токены из расчёта тысяча токенов на минуту, но тарифицируется по нулевой ставке: запрос из пятидесяти девяти символов, давший около пяти секунд речи, записал 59 prompt-токенов и 83 completion-токена, а списание прошло по 59. Знаки препинания и пробелы считаются символами.