UNPKG

@minto-ai/huoshan-mp-tts

Version:

借助“火山引擎在线语音合成API”实现微信小程序端“文本转语音

159 lines (123 loc) 2.75 kB
# 安装 使用 `npm` 进行安装 ```bash npm install @minto-ai/huoshan-mp-tts ``` # 使用 ## 引入库 ```javascript import huoshanTts from '@minto-ai/huoshan-mp-tts' ``` ## 初始化 ```javascript huoshanTts.config() ``` ## 创建应用实例 详细配置可参考[参数基本说明](hhttps://www.volcengine.com/docs/6561/79823)。 ```javascript const ttsInstance = huoshanTts.create({ // 音色 voice_type: 'zh_female_daimengchuanmei_moon_bigtts' }) ``` ## 可用方法 ### 激活应用 可以发送文本进行语音播放 ```javascript ttsInstance.start() ``` ### 发送文本 ```javascript ttsInstance.send('你好呀。') ``` ### 结束应用 通知应用发送文本已经结束,但是不会销毁应用,剩余的文本将会继续播放。 ```javascript ttsInstance.end() ``` ### 销毁应用 应用播放结束,应用将会被销毁。剩余的文本将会停止播放。 ```javascript ttsInstance.finish() ``` ## 应用钩子 ### `audioFirstStart` ```javascript ttsInstance.on('audioFirstStart', () => { console.log('音频首次播放') }) ``` ### `appError` ```javascript ttsInstance.on('appError', (error) => { console.log('应用错误', error) }) ``` ### `appFinish` ```javascript ttsInstance.on('appFinish', () => { console.log('应用已销毁') }) ``` # 示例代码 ```vue <script> import huoshanTts from '@minto-ai/huoshan-mp-tts' huoshanTts.config() let ttsInstance = null let timer = null export default { onLoad() { ttsInstance = huoshanTts.create() ttsInstance .on('appFinish', () => { console.log('appFinish') }) .on('appError', (error) => { console.log('应用错误', error) }) .on('audioFirstStart', () => { console.log('audioFirstStart') }) }, beforeUnmount() { if (ttsInstance) { ttsInstance.finish() } }, methods: { handleStart() { clearTimeout(timer) const arrText = [ `你要抱`, `抱我吗?`, `我好`, `喜欢你呀!`, ] ttsInstance.start() let index = 0 timer = setInterval(() => { ttsInstance.send(arrText[index]) index += 1 if (index === arrText.length) { ttsInstance.end() clearInterval(timer) } }, 100) }, handleFinish() { ttsInstance.finish() clearTimeout(timer) } } } </script> <template> <view class="content"> <button @click="handleStart"> 开启 </button> <button @click="handleFinish" /> </view> </template> ```