编辑
2024-03-20
前端
0
请注意,本文编写于 187 天前,最后修改于 187 天前,其中某些信息可能已经过时。

JS 实现文本转语音

1、在JavaScript中可以使用Web Speech API来实现将文本转换为语音。下面是一个示例的代码

javascript
// 创建SpeechSynthesis对象 const synth = window.speechSynthesis; // 定义要转换成语音的文本 const textToConvert = "这是要转换成语音的文本"; // 创建SpeechSynthesisUtterance对象并设置相关属性 const utterance = new SpeechSynthesisUtterance(textToConvert); utterance.lang = 'zh-CN'; // 设置语言为中文(需支持) utterance.rate = 1; // 设置语速(默认值为1) utterance.volume = 1; // 音量 (0-1) utterance.pitch = 2; // 设置音调(默认值为1) // 开始合成语音 synth.speak(utterance);

utterance.lang 获取并设置话语的语言(en-US、zh-CN)
utterance.pitch 获取并设置话语的音调 (值越大越尖锐,range:0-2, default:1, float)
utterance.rate 获取并设置说话的速度 (值越大语速越快, range:0.1-10, default:1, float)
utterance.text 获取并设置说话时的文本
utterance.voice 获取并设置说话的声音
utterance.volume 获取并设置说话的音量 (range: 0-1, default:1, float)
utterance.onboundary
utterance.onend 播放结束的回调
utterance.onerror 播放出现错误的回调
utterance.onmark 当读到标记文本时的回调
utterance.onpause 播放暂停
utterance.onresume 播放重启
utterance.onstart 播放开始的回调

2、speak-tts
基于Web Speech API开发的组件,跟Web Speech API用法差不多,但是多了下载和引入的部分。同理存在兼容性问题

https://www.npmjs.com/package/speak-tts

本文作者:yaohuiofe

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!