假期里要完成2个C#demo的制作,记录一下自己从无到有的学习过程。
本文主要实现了一个简单的语音合成和语音转文字的小程序。
语音合成的需求为:根据已有问卷上的问题进行语音提问。
语音识别的需求为:在提问之后对用户的回答进行实时的语音转文字。
由于目前还无法接入科大讯飞的接口,并且后续要涉及语音情感识别的内容,此处先练习使用Windows自带类库进行制作。本文demo的效果图如下:
![](https://i-blog.csdnimg.cn/blog_migrate/592ef338d65d55b85a9c69e7f031a3af.png)
语音合成
主要用到System.Speech.Synthesis
这个命名空间。
// 定义类成员部分
private SpeechSynthesizer speechSyn = new SpeechSynthesizer(); //用于语音合成
//绑定“开始询问”按钮的点击事件
private void buttonStart_Click(object sender, EventArgs e)
{
// 配置对象
speechSyn.SetOutputToDefaultAudioDevice();
// 事件处理方法
speechSyn.SpeakCompleted += new EventHandler<SpeakCompletedEventArgs>(speakCompleted);