如今,越来越多的人成为视频博主,文字合成语音是很多博主的强需求。今天结合“工具百宝箱”这款微信小程序,介绍一下如何开发文字转语音的功能。
文字合成语音在学术界被称为tts
(text to speech),国内的云服务器厂商提供了接口供调用。每个腾讯云用户可以免费领取为期两个月800万字符的语音包供学习调研用,故本文以腾讯云为例进行介绍。
服务端开发
服务端调用腾讯云tts
接口需要使用appId
和appKey
做鉴权,需要先前往腾讯云api中心 创建密钥,按照页面提示进行操作即可。
调用接口需要一系列复杂的签名操作,腾讯云为了方便用户,提供了多种编程语言的sdk
,可以前往tts文档 ,在页面下方找到你想要的sdk
,以nodejs
为例,只需在package.json
引入即可。
"dependencies": {
"tencentcloud-sdk-nodejs": "4.0.157"
}
合成语音的几个重要参数分别是:语速、音色、文字内容、音量大小,腾讯云的api explore 提供了可视化的工具来指导开发者构造请求参数,开发者只需要参考这里面的调用方法在服务端使用sdk进行调用即可。
router.get("/text-to-voice", async (req, res) => {
let ret = {
success: true
}
try {
if (req.query.<