码迷,mamicode.com
首页 > 其他好文 > 详细

用TTS实现文本转语音

时间:2015-09-23 13:26:01      阅读:235      评论:0      收藏:0      [点我收藏+]

标签:

最近被toefl单词虐成狗::>_<::  

想做一个可以自动把单词转成语音的软件,这样就可以在路上戴耳机边走边听啦~

 

用微软的TTS语音库可以很容易地实现。早期的TTS要想实现中英文混合朗读还很麻烦,然而Win10里自带的新版SDK已经解决了这个问题。可以自动识别出中文和英文。这点超赞~

注意:如果用的是英文版系统,需要先安装中文Speech Library

技术分享

然后在控制面板--语音识别选项里可以看到这个新的语音库:

技术分享

 

 

进入VS,新建一个C#工程,然后在Solution Explorer----References上右键,Add References,添加如下选项:

技术分享

 

实现文本转语音有两种Library,System.Speech或者SpeechLib。这里我用的SpeechLib

基本的朗读功能实现如下:

SpVoice voice = new SpVoice();            
voice.Rate = 0; //语速,[-10,10]
voice.Volume = 100; //音量,[0,100]
voice.Voice = voice.GetVoices().Item(2); //语音库
voice.Speak("中文speech");

 

但是为了在手机上播放,仅仅让它读出来还不够....最好能保存到音频文件

可以用SpeechLib自带的类:  SpeechLib.SpFileStream sfs=new SpeechLib.SpFileStream();

 

 

自制了一个小Demo:

技术分享

单击Select File,通过打开对话框打开txt文件

单击Read,将文本自动转语音,并保存到D:\233.mp3文件    【懒得写保存对话框啦

 

Download

 

用TTS实现文本转语音

标签:

原文地址:http://www.cnblogs.com/pdev/p/4831858.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!