调用 Windows 7 中英文混合朗读

简介:

1、windows7内置语音识别

2、文本到语音转换增加了 Microsoft Lili - Chinese(China) ,支持中英文混合朗读

3、女声、部分词组基本发音准确

以上让我有做个小程序的冲动;如下:

1、引入SpeechLib.dll

2、创建form

3、编写代码

复制代码

public partial class FormMain : Form
{
public FormMain()
{
InitializeComponent();
}

private void FormMain_Load( object sender, EventArgs e)
{
GetVoices();
}

private void GetVoices()
{
SpVoice voice = new SpVoiceClass();
ISpeechObjectTokens voices = voice.GetVoices( "", "");
var list = new List< string>();
foreach (ISpeechObjectToken token in voices)
list.Add(token.GetDescription( 0));
cbSpeechType.DataSource = list;
}

private void btnSpeechText_Click( object sender, EventArgs e)
{
SpeechText( null);
}

private void SpeechText( string fileName)
{
Cursor = Cursors.WaitCursor;
SpFileStream stream = null;
SpVoice voice = new SpVoiceClass();
if (fileName + "" != "")
{
stream = new SpFileStreamClass();
stream.Open(fileName, SpeechStreamFileMode.SSFMCreateForWrite, false);
voice.AudioOutputStream = stream;
}
voice.Voice = voice.GetVoices( "", "").Item(cbSpeechType.SelectedIndex);
voice.Volume = tbVol.Value;
voice.Rate = tbSpeechSpeed.Value;
voice.Speak(tbText.Text, SpeechVoiceSpeakFlags.SVSFDefault);
if (fileName + "" != "" && stream != null)
stream.Close();
Cursor = Cursors.Arrow;
}

private void btnRecordSpeech_Click( object sender, EventArgs e)
{
Cursor = Cursors.WaitCursor;
using (var saveFileDialog = new SaveFileDialog())
{
saveFileDialog.FileName = " MyVoice.wav ";
saveFileDialog.Filter = " Wave (*.wav)|*.wav ";
if (saveFileDialog.ShowDialog() == DialogResult.OK)
{
SpeechText(saveFileDialog.FileName);
}
}
Cursor = Cursors.Arrow;
}
}
复制代码

以上功能支持朗读文本框内文本,支持讲文本输出语音文件;

参考应用场景:

1、尝尝鲜,再删除

2、将小说文本转化为音频放MP3内去听

3、骗骗小孩

运行环境需求:

1、WINDOWS 7

2、其他未知




本文转自suifei博客园博客,原文链接:http://www.cnblogs.com/Chinasf/archive/2010/01/04/1639282.html,如需转载请自行联系原作者

相关文章
|
3月前
|
Windows
火山中文编程 -- 第一个windows程序
火山中文编程 -- 第一个windows程序
12 0
|
3月前
|
Windows
不让Windows显示语言栏“中”“英”字符的一种方法
【2月更文挑战第6天】本文介绍在Windows 11操作系统中,将任务栏右下角的语言栏的“中”、“英”标识加以隐藏、消除的一种或许可行的方法~
不让Windows显示语言栏“中”“英”字符的一种方法
|
IDE 程序员 编译器
C#编程学习09:vs2015的windows窗体应用程序创建及英文界面变换为中文界面的方法
C#编程学习09:vs2015的windows窗体应用程序创建及英文界面变换为中文界面的方法
C#编程学习09:vs2015的windows窗体应用程序创建及英文界面变换为中文界面的方法
|
编解码 iOS开发 MacOS
FL Studio2023免费版中文语言音乐宿主软件
音乐在人们心中的地位日益增高,近几年音乐选秀的节目更是层出不穷,喜爱音乐,创作音乐的朋友们也是越来越多,音乐的类型有很多,好比古典,流行,摇滚等等。对新手友好程度基本上在首位,电音类制作支持仅次于Ableton Push,调用音色和素材很方便。因此初学阶段以及对电音需求高、依赖素材偏多的制作人偏爱它。
273 0
|
Android开发
Android手机模拟器如何把语言设置为中文
Android手机模拟器如何把语言设置为中文
329 0
Android手机模拟器如何把语言设置为中文
|
SQL 监控 C#
C# Winform制作虚拟键盘,支持中文
原文:C# Winform制作虚拟键盘,支持中文           最近在做一个虚拟键盘功能,代替鼠标键盘操作,效果如下:        实现思路:          1  构建中文-拼音 数据库,我用的是SQ...
2552 0