C#语音朗读文本 — TTS的实现
TTS, Text To Speech的縮寫,是使用語音朗讀文本的技術(shù)。目前,在國內(nèi)應(yīng)用較多的是排隊(duì)叫號(hào)系統(tǒng)
Windows 平臺(tái)的TTS,通常使用的是微軟自帶的 Speech API。
Windows XP 自帶的是 Speech API 5.1,默認(rèn)是只支持英文的。如果要朗讀中文,需要安裝LangPack,里面支持簡體中文,不過,是個(gè)男生的發(fā)音。
從Vista開始,默認(rèn)自帶的 Microsoft Speech API 5.3,效果好了很多,可惜不支持XP,郁悶
下面,說一下 C# 利用 TTS 來朗讀文本的實(shí)現(xiàn)方式:
從 .NET 3.0開始,.NET Framework里,提供了托管的Speech API 調(diào)用方法,這樣,就非常流暢了。而不必拘泥于繁瑣的非托管COM調(diào)用了。
.Net 3.0 的實(shí)現(xiàn)代碼:
using System.Speech.Synthesis;SpeechSynthesizer synth = new SpeechSynthesizer();synth.Speak("Hello, world! 你好么?");synth.Dispose();?從.NET 4.0開始,增加了一個(gè) dynamic 動(dòng)態(tài)綁定的功能,使得C#可以像VB.NET那樣,使用后期綁定的方式,使用COM對(duì)象了,從而使得直接COM調(diào)用,也非常的簡單了。
.Net 4.0 的實(shí)現(xiàn)方式:
Type type = Type.GetTypeFromProgID("SAPI.SpVoice");dynamic spVoice = Activator.CreateInstance(type);spVoice.Speak("你好,歡迎使用 CSharp 4.0!");說明: 如果是XP系統(tǒng),并且沒有安裝 TTS 5.1 語言包的話,上面的朗讀,會(huì)忽略所有的中文的。
我這里,也把 TTS5.1的下載地址,一并發(fā)布出來:
SDK 5.1 下載,SpeechSDK51.exe, 這里?
http://download.microsoft.com/download/B/4/3/B4314928-7B71-4336-9DE7-6FA4CF00B7B3/SpeechSDK51.exe
SDK 5.1 語言包,SpeechSDK51LangPack.exe,這里
http://download.microsoft.com/download/B/4/3/B4314928-7B71-4336-9DE7-6FA4CF00B7B3/SpeechSDK51LangPack.exe
SDK 5.1 語音文件,SpeechSDK51MSM.exe,這里
http://download.microsoft.com/download/B/4/3/B4314928-7B71-4336-9DE7-6FA4CF00B7B3/SpeechSDK51MSM.exe
轉(zhuǎn)自:http://www.cnblogs.com/sntetwt/p/3533475.html
轉(zhuǎn)載于:https://www.cnblogs.com/JuneZhang/p/3696594.html
總結(jié)
以上是生活随笔為你收集整理的C#语音朗读文本 — TTS的实现的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ios原子操作和各种锁
- 下一篇: asp.net机器人注册原理