招女兵条件,60岁老汉内脏全长反,日本9级地震安倍遇难
1. 引用system.speech
2. 通过speechsynthesizer类朗读文本
new speechsynthesizer().speakasync("我们都是好孩子we're good kids.")
3. speck vs speckasync函数
1 private speechsynthesizer speechsyn=new speechsynthesizer(); 2 /// <summary> 3 /// 异步播放 4 /// </summary> 5 private void playasync() 6 { 7 var currentspokenprompt = speechsyn.getcurrentlyspokenprompt(); 8 if (currentspokenprompt != null) 9 { 10 speechsyn.speakasynccancel(currentspokenprompt); 11 } 12 speechsyn.speakasync(richtextbox1.text); 13 } 14 /// <summary> 15 /// 同步播放 16 /// 注:卡ui 17 /// </summary> 18 private void play() 19 { 20 using (speechsynthesizer speechsyn = new speechsynthesizer()) 21 { 22 speechsyn.speak(richtextbox1.text); 23 } 24 }
4. 设置朗读角色
1 var speechsynthesizer = new speechsynthesizer(); 2 var voices= speechsynthesizer.getinstalledvoices(cultureinfo.currentculture).select(x => x.voiceinfo.name).tolist(); 3 speechsynthesizer.selectvoice(voices[0]); 4 speechsynthesizer.speakasync("我们都是好孩子we're good kids.");
5. 其它
6. 导出音频文件
可以将文本语音合成后,导出成一个wav、mp3等音频文件。
1 private void exportaudiofile() 2 { 3 using (speechsynthesizer speechsyn = new speechsynthesizer()) 4 { 5 speechsyn.volume = 50; 6 speechsyn.rate = 0; 7 8 var filepath = environment.getfolderpath(environment.specialfolder.desktop) + $"\\{richtextbox1.text}.mp3"; 9 if (file.exists(filepath)) 10 { 11 file.delete(filepath); 12 } 13 14 speechsyn.setoutputtowavefile(filepath); 15 speechsyn.speak(richtextbox1.text); 16 speechsyn.setoutputtodefaultaudiodevice(); 17 18 messagebox.show($"保存录音文件成功,保存路径:{filepath}"); 19 } 20 }
demo下载
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
asp.net搭建博客,使用BlogEngine.NET+MySql搭建博客
网友评论