讯飞socket版tts之nodejs应用
比来在看文本转语音的处事,颠末多次比拟后,发明综合来看还是讯飞的体验最好。其他家转换出来的语音,都过于生硬,一听就是机器人。只有讯飞家的对照接近正凡人的发音特点。
在线体验科大讯飞文本转语音处事: https://www.xfyun.cn/services/online_tts
下一步就是测验考试整合到本身的项目中去了。检察官网说明,发明新版本的tts API有以下特点:
1. 只撑持websocket,与通例意义上的API使用方法差异较大
2. 鉴权方面需要多次庞大的编码转换
3. 只撑持pcm格局的语音返回,不撑持mp3, wav格局等
4. 对nodejs的异步,回调没有撑持
上述几个特点,导致使用它对照不容易。最终决定本身多花一些时间,写一个通用撑持类库。这个类库的方针就是简化挪用,只供给必需的信息,,一个函数挪用即可。目前这个库已经上传npm,但愿可以给其他人使用时供给进一步的便当。
这个库的核心成果:
1. 切合通例nodejs挪用方法,不必关心websocket部分
2. 撑持async-await和回调语法
3. 撑持多语音格局,pcm, mp3, wav等
npm包地点:https://www.npmjs.com/package/xf-tts-socket
安置方法:npm install xf-tts-socket --save
async-await使用方法(默认发音人设置)
const XunfeiTTS = require(‘xf-tts-socket‘); const { promisify } = require(‘util‘); const getXunfeiTTSAsync = promisify(XunfeiTTS); const test = async () => { const auth = { app_id: ‘xxxxxx‘, app_skey: ‘xxxxxxxxxxx‘, app_akey: ‘xxxxxxxxxxx‘, }; const business = {}; const text = ‘如果握手掉败,则按照差别错误类型返回差别HTTP Code状态码‘; const file = ‘test.mp3‘; const ret = await getXunfeiTTSAsync(auth, business, text, file); console.log(‘ret‘, ret); }; test();
async-await使用方法(自界说发音人设置)
const XunfeiTTS = require(‘xf-tts-socket‘); const { promisify } = require(‘util‘); const getXunfeiTTSAsync = promisify(XunfeiTTS); const test = async () => { const auth = { app_id: ‘xxxxxx‘, app_skey: ‘xxxxxxxxxxx‘, app_akey: ‘xxxxxxxxxxx‘, }; const business = { aue: ‘raw‘, auf: ‘audio/L16;rate=16000‘, vcn: ‘aisbabyxu‘, tte: ‘UTF8‘, speed: 50 }; const text = ‘如果握手掉败,则按照差别错误类型返回差别HTTP Code状态码‘; const file = ‘test.mp3‘; const ret = await getXunfeiTTSAsync(auth, business, text, file); console.log(‘ret‘, ret); }; test();
callback使用方法(默认发音人设置)
const XunfeiTTS = require(‘xf-tts-socket‘); const test = () => { const auth = { app_id: ‘xxxxxx‘, app_skey: ‘xxxxxxxxxxx‘, app_akey: ‘xxxxxxxxxxx‘, }; const business = {}; const text = ‘如果握手掉败,则按照差别错误类型返回差别HTTP Code状态码‘; const file = ‘test.mp3‘; XunfeiTTS(auth, business, text, file, (err, ret) => { console.log(‘ret‘, ret); }); }; test();
讯飞socket版tts之nodejs应用
温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/30714.html
- 上一篇:不用关心数据库设计
- 下一篇: 如何下载web资源 目的 最近机工社宣布开放工程科技数字图书馆