当前位置: 首页 > news >正文

Vue语音播报功能

使用Web Speech API的SpeechSynthesis接口来实现文本转语音

Web Speech API可能不在所有浏览器中都能完美支持 特别是旧浏览器
在生产环境中,你可能需要添加功能检测和后备方案。
<template><div><textarea v-model="text" placeholder="请输入文本"></textarea><button @click="speak">阅读文本</button><button @click="stop">停止阅读</button><button @click="listen">听我写</button></div>
</template><script>
export default {data() {return {text: '蜂鸟众包来新订单了 请及时接单 ',recognition: null,speech: null};},methods: {speak() {if ('speechSynthesis' in window) {const msg = new SpeechSynthesisUtterance();msg.text = this.text;// 内容msg.lang = 'zh-CN'; // 默认使用的语言:中文msg.volume = 1; // 默认声音音量:1msg.rate = 1; // 默认语速:1msg.pitch = 1; // 默认音高:1window.speechSynthesis.speak(msg)// 播放}else{alert('您的浏览器不支持语音合成');}},stop() {window.speechSynthesis.cancel();// 取消所有正在进行的语音播报},listen() {this.recognition = new webkitSpeechRecognition();this.recognition.onresult = (event) => {const text = event.results[0][0].transcript;this.text = text;};this.recognition.start();}}
};
</script>

speak-tts

npm install speak-tts
<template><div><button @click="speak">读出文本</button></div>
</template><script>
import Speech from 'speak-tts'export default {data () {return {speech:null,text:"语音播报测试 美团众包来新订单了 请及时接单 蜂鸟众包来新订单了 请及时接单",}
},
mounted(){this.speechInit();
},
methods:{speechInit(){this.speech = new Speech();this.speech.setLanguage('zh-CN');this.speech.init().then(()=>{console.log('语音播报初始化完成...')})},//语音播报speak(){this.speech.speak({text:this.text}).then(()=>{console.log("播报完成...")})}
}};
</script>

百度合成API

http://www.lryc.cn/news/521402.html

相关文章:

  • 【Java设计模式-4】策略模式,消灭if/else迷宫的利器
  • citrix netscaler13.1 重写负载均衡响应头(基础版)
  • 【AI学习】地平线首席架构师苏箐关于自动驾驶的演讲
  • QILSTE H11-D212HRTCG/5M高亮红绿双色LED灯珠 发光二极管LED
  • 2️⃣java基础进阶——多线程、并发与线程池的基本使用
  • RAG多路召回
  • 复杂 C++ 项目堆栈保留以及 eBPF 性能分析
  • 网安——计算机网络基础
  • ZCC1923替代BOS1921Piezo Haptic Driver with Digital Front End
  • Kutools for Excel 简体中文版 - 官方正版授权
  • PostgreSQL和MySQL有什么区别?
  • 比较之舞,优雅演绎排序算法的智美篇章
  • C语言数据结构与算法(排序)详细版
  • JAVA:利用 RabbitMQ 死信队列实现支付超时场景的技术指南
  • pytest+request+yaml+allure搭建低编码调试门槛的接口自动化框架
  • Elasticsearch实战指南:从入门到高效使用
  • Open FPV VTX开源之嵌入式OSD配置
  • 2Hive表类型
  • 计算机网络之---公钥基础设施(PKI)
  • EF Core执行原生SQL语句
  • GaussDB分布式数据倾斜处理
  • 代码随想录Day34 | 62.不同路径,63.不同路径II,343.整数拆分,96.不同的二叉搜索树
  • vue.js辅助函数-mapMutations
  • Vue3组件设计模式:高可复用性组件开发实战
  • PHP 8.4 安装和升级指南
  • 什么是 OpenResty
  • Windows图形界面(GUI)-QT-C/C++ - QT控件创建管理初始化
  • 【计算机网络】lab8 DNS协议
  • 了解linux中的“of_property_read_u32()”
  • iOS - Objective-C 底层中的内存屏障