讯飞语音-语音合成
概述
讯飞语音合成(Text-To-Speech,简称 TTS)是科大讯飞开放平台提供的一项核心AI能力,可以将文本转为自然流畅的语音,广泛应用于智能客服、语音播报、学习工具、AI配音等场景。
核心特点
项目 说明 🎤 多音色支持 上百种音色可选(男女童音、播音腔、方言等) 🌍 多语言 支持中文、英文、粤语、韩语、日语、维语等 🧠 智能断句 自动处理标点和语气,合成更自然 🎚 可调参数 可控制语速、音量、语调、音色等合成参数
接入方式
特性 WebAPI 接口 SDK 接入方式 接入方式 通过 HTTP 请求或 WebSocket 调用(RESTful API 或流式接口) 通过本地 SDK,通常是通过第三方开发平台或本地集成调用 支持平台 Web、移动端、后端等 多平台(Android、iOS、Windows、Linux、嵌入式设备等) 调用方式 直接通过网络调用,支持 HTTP POST 请求、WebSocket 实时请求 本地调用,无需手动编写 HTTP 请求,SDK 内置接口处理通信 音频合成方式 请求合成,返回合成音频文件或流式返回音频流(边合成边播放) 同样支持请求合成和流式返回音频,具体功能视 SDK 提供的接口 鉴权机制 需要动态构造鉴权签名,传递至接口 鉴权通过 SDK 配置,密钥通常存储在本地,不需要动态生成 资源消耗 后端会消耗服务器资源,但不需要本地设备计算 需要设备的计算能力,消耗本地计算资源 联网要求 需要持续的网络连接 在线版 SDK 需要网络连接(如 WebAPI),离线版 SDK 可不需要 音频格式 支持多种格式,如 WAV、MP3、PCM 等 支持多种音频格式,但格式支持取决于 SDK 集成复杂度 对后端开发较为友好,开发人员只需处理 API 调用和音频流数据 SDK 集成可能需要更多的依赖配置和平台兼容性调试 安全性 需要保护 API 密钥和鉴权信息,避免泄露 SDK 内置鉴权机制,密钥通常存储在本地,相对安全
官方Demo
Demo 调用演示:语音合成流式API JAVA-SDK-DEMO一分钟调用视频
Demo 下载:调用示例
JS 语言Demo
下载Demo
下载地址:调用示例
获取密钥
配置密钥
按照 README.md 的说明,在
example/tts/index.js中配置认证的密钥。
运行测试
使用 Live Server 打开
example/tts/index.html
JAVA 语言Demo
下载Demo
下载地址:调用示例
获取密钥
配置密钥
在
WebTtsWs类中配置密钥
运行测试
JAVA-SDK-DEMO
下载Demo
下载地址:调用示例
获取密钥
配置密钥
按照 README.md 在
src/main/resources/test.properties中配置密钥
运行测试
运行
TtsClientApp.java进行测试
调用流程说明
参考官方文档:在线语音合成API文档
接口鉴权
接口鉴权与语音听写接口的鉴权方式一致,可以直接参考以下步骤
接口数据传输与接收
- 握手成功后客户端和服务端会建立websocket连接,客户端通过websocket连接可以同时上传和接收数据。
- 客户端每次会话只用发送一次文本数据和参数,引擎有合成结果时会推送给客户端。当引擎的数据合成完毕时,会返回结束标识,具体为:
{ "data":{ .... #其他参数 "status":2 } }
请求参数
公共参数
业务参数
业务数据流参数
请求参数示例
{ "common": { "app_id": "12345678" }, "business": { "aue": "raw", "vcn": "xiaoyan", "pitch": 50, "speed": 50 }, "data": { "status": 2, "text": "5q2j5Zyo5Li65oKo5p+l6K+i5ZCI6..." } }
返回参数
返回参数示例
{ "code":0, "message":"success", "sid":"ttsxxxxxxxxxxx", "data":{ "audio":"QAfe..........", "ced":"14", "status":2 } }














