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

NET 语言识别,语音控制操作、语音播报

System.Speech.

》》System.Speech.Synthesis; 语音播报
》》System.Speech.Recognition 语音识别

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Speech.Recognition;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Speech;
using System.Speech.Synthesis;
namespace WindowsFormsApp1
{public partial class Form2 : Form{SpeechRecognitionEngine recognitionEngine;public Form2(){recognitionEngine = new SpeechRecognitionEngine();Choices choices = new Choices();choices.Add(new string[] { "开始", "Start", "Go", "停止", "Stop", "Over" });GrammarBuilder gb = new GrammarBuilder(choices);Grammar grm = new Grammar(gb);recognitionEngine.LoadGrammarAsync(grm);//音频输入recognitionEngine.SetInputToDefaultAudioDevice();recognitionEngine.SpeechRecognized += RecognitionEngine_SpeechRecognized;InitializeComponent();}private void RecognitionEngine_SpeechRecognized(object sender, SpeechRecognizedEventArgs e){string info = e.Result.Text;           switch (info){case "开始":case "Start":case "Go":richTextBox1.Text += info;break;case "停止":case "Stop":case "Over":richTextBox1.Text += info;break;}}private void Form2_Load(object sender, EventArgs e){this.btn_StopSpeek.Enabled = false;}private void btn_startSpeek_Click(object sender, EventArgs e){this.btn_StopSpeek.Enabled = true;recognitionEngine.RecognizeAsync(RecognizeMode.Multiple);this.btn_startSpeek.Enabled = false;}private void btn_StopSpeek_Click(object sender, EventArgs e){this.btn_StopSpeek.Enabled = false;recognitionEngine.RecognizeAsyncStop();this.btn_startSpeek.Enabled = true;}private void button1_Click(object sender, EventArgs e){SpeechSynthesizer sp = new SpeechSynthesizer();PromptBuilder pb = new PromptBuilder();pb.AppendText("123");sp.Speak(pb);}}
}

语言播报

            SpeechSynthesizer sp = new SpeechSynthesizer();            sp.Rate = 1;//语速  -10 到 10 之间sp.Volume = 50;//音量 (0 到 100)PromptBuilder pb = new PromptBuilder();pb.AppendText("123");sp.Speak(pb);
获取语言包、异步播报、暂停、停止、继续语言播报、保存音频

》》异步播报,就是不阻塞其它操作

            SpeechSynthesizer sp = new SpeechSynthesizer();            sp.Rate = 1;//语速  -10 到 10 之间sp.Volume = 50;//音量 (0 到 100)PromptBuilder pb = new PromptBuilder();pb.AppendText("1234564878564135415648145");//同步播报//sp.Speak(pb);//异步播报sp.SpeakAsync(pb);

》》获取语言包

           SpeechSynthesizer sp = new SpeechSynthesizer();foreach (var item in sp.GetInstalledVoices()){this.comboBox1.Items.Add(item.VoiceInfo.Name);}

》》 异步播报 暂停、继续

if (sp.State == SynthesizerState.Speaking){// 正在播报 暂停sp.Pause();}else if (sp.State == SynthesizerState.Paused){// 已经 暂停,继续播放sp.Resume();}

》》停止

       if (sp.State == SynthesizerState.Speaking){//取消所有排队、异步、语音合成操作。sp.SpeakAsyncCancelAll();}

》》保存音频

          //使用using才能在结束后自动保存语音文件using (SpeechSynthesizer sp = new SpeechSynthesizer()){string path = @"D:\\zenvideo\";sp.SetOutputToWaveFile(path + "1.wav");//这句不会播报的,会把声音生成到1.wavsp.Speak("13213213213213");}

在这里插入图片描述

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

相关文章:

  • Unity 调试死循环程序
  • 视频监控平台LntonCVS视频融合共享平台智慧安防视频监控汇聚应用方案
  • 【论文阅读笔记】Hierarchical Neural Coding for Controllable CAD Model Generation
  • Unity扩展SVN命令
  • 「实战应用」如何用DHTMLX将上下文菜单集成到JavaScript甘特图中(三)
  • 微服务保护
  • Python语言的优势所在
  • npm install时报错 reason: certificate has expired
  • 价格战再起:OpenAI 发布更便宜、更智能的 GPT-4o Mini 模型|TodayAI
  • 从0开始对时间序列模型ACF和PACF的理解(以股价预测为例子)
  • MybatisPlus(MP)基础知识全解析
  • 前端组件化实践:Vue自定义加载Loading组件的设计与实现
  • LLaMA 背景
  • 硅谷裸机云多IP服务器怎么样?
  • Python+Django+MySQL的新闻发布管理系统【附源码,运行简单】
  • 实战项目:仿muduo库实现并发服务器
  • 提高Java程序效率:ImmutableList、Stream API 和 JSON序列化实战指南
  • [CP_AUTOSAR]_分层软件架构_接口之通信模块交互介绍
  • C语言 ——— 浮点数类型 在 内存中 的 存储模式
  • socket 收发TCP/UDP
  • Nest.js 实战 (三):使用 Swagger 优雅地生成 API 文档
  • spark shell
  • 集群架构-web服务器(接入负载均衡+数据库+会话保持redis)--15454核心配置详解
  • # Redis 入门到精通(七)-- redis 删除策略
  • 10:00面试,10:08就出来了,问的问题有点变态。。。
  • html+canvas 实现签名功能-手机触摸
  • 前端组件化探索与实践:Vue自定义暂无数据组件的开发与应用
  • 《汇编语言 基于x86处理器》- 读书笔记 - Visual Studio 2019 配置 MASM环境
  • Air780E/Air780EP/Air780EQ/Air201模块遇到死机问题如何分析
  • 吴松洋院长 艺后整形集团专家组特约成员 全方位责任塑美