基于 Microsoft Edge 在线语音服务的文本转语音接口。19 种语音,支持多语言,免费稳定。
点击播放按钮即可试听,所有语音均来自 Edge TTS 服务。
检查服务是否正常运行。
curl https://tts.kina.ink/health
获取所有可用的语音列表。
curl https://tts.kina.ink/voices
通过 URL 参数传递文本,直接返回音频流。适合浏览器直接访问。
curl "https://tts.kina.ink/tts?text=你好世界&voice=zh-CN-XiaoxiaoNeural&rate=+0%" -o hello.mp3
通过 JSON 请求体传递参数,更灵活,适合程序调用。
curl -X POST "https://tts.kina.ink/tts" \
-H "Content-Type: application/json" \
-d '{
"text": "你好世界",
"voice": "zh-CN-XiaoxiaoNeural",
"rate": "+0%",
"volume": "+0%",
"pitch": "+0Hz",
"format": "mp3"
}' \
--output output.mp3
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
text |
string | 必填 | - | 要合成的文本,最长 5000 字 |
voice |
string | 选填 | zh-CN-XiaoxiaoNeural |
语音 ID,见上方语音列表 |
rate |
string | 选填 | +0% |
语速:-50% ~ +50% |
volume |
string | 选填 | +0% |
音量:-50% ~ +50% |
pitch |
string | 选填 | +0Hz |
音调:-50Hz ~ +50Hz |
format |
string | 选填 | mp3 |
mp3 / wav / ogg / webm |
https://tts.kina.ink/tts?text=你好 可直接播放。async function speak(text, voice = 'zh-CN-XiaoxiaoNeural') {
const url = `https://tts.kina.ink/tts?${new URLSearchParams({
text: text,
voice: voice,
rate: '+0%'
})}`;
const response = await fetch(url);
const blob = await response.blob();
const audioUrl = URL.createObjectURL(blob);
const audio = new Audio(audioUrl);
audio.play();
}
speak('你好世界', 'zh-CN-XiaoxiaoNeural');
import requests
def tts(text, voice='zh-CN-XiaoxiaoNeural', output='output.mp3'):
url = 'https://tts.kina.ink/tts'
params = {'text': text, 'voice': voice, 'rate': '+0%'}
response = requests.get(url, params=params, timeout=60)
if response.status_code == 200:
with open(output, 'wb') as f:
f.write(response.content)
print(f'已保存到 {output}')
else:
print(f'错误: {response.status_code}')
tts('你好世界', 'zh-CN-XiaoxiaoNeural')
<?php
function tts($text, $voice = 'zh-CN-XiaoxiaoNeural', $output = 'output.mp3') {
$url = 'https://tts.kina.ink/tts?' . http_build_query([
'text' => $text,
'voice' => $voice,
'rate' => '+0%'
]);
$audio = file_get_contents($url);
file_put_contents($output, $audio);
echo "已保存到 $output\n";
}
tts('你好世界', 'zh-CN-XiaoxiaoNeural');
const https = require('https');
const fs = require('fs');
function tts(text, voice = 'zh-CN-XiaoxiaoNeural', output = 'output.mp3') {
const url = `https://tts.kina.ink/tts?text=${encodeURIComponent(text)}&voice=${voice}`;
https.get(url, (res) => {
const file = fs.createWriteStream(output);
res.pipe(file);
file.on('finish', () => {
file.close();
console.log(`已保存到 ${output}`);
});
});
}
tts('你好世界', 'zh-CN-XiaoxiaoNeural');