调用 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、其他未知
说再多不如放个代码,所以本文从简,请下载后编译运行。
/Files/Chinasf/AnySpeech.rar
转载于:https://www.cnblogs.com/Chinasf/archive/2010/01/04/1639282.html
调用 Windows 7 中英文混合朗读相关推荐
- TTS中英文混合朗读的完全设计实现
中英文混合朗读一直是个难点,即在一段文本中要将中文和英文分离出来进行分别朗读,又不能打乱朗读的次序,所以我们设计如下的两种方法,每种方法都有各自的优点和缺点. ①采用同步朗读方式进行混合朗读: 将朗读 ...
- Python调用Windows API实现文本朗读
异想之旅:本人原创博客完全手敲,绝对非搬运,全网不可能有重复:本人无团队,仅为技术爱好者进行分享,所有内容不牵扯广告.本人所有文章仅在CSDN和个人博客(一定是异想之旅域名)发布,除此之外全部是盗文! ...
- C#中英文混合朗读文本代码
//首先要引用一个类库SpeechLib.dll using System; using System.Collections.Generic; using System.Windows.Forms; ...
- 我用纯C语言开发的中英文混合分词服务器3.0正式发布,词库190多万词,每秒切分5万+,同时提供 c、java、C#、delphi、js调用范例
我用纯C语言开发的中英文混合分词服务器3.0正式发布,词库190多万词,每秒切分5万+,同时提供 c.java.C#.delphi.js调用范例 百万商业圈中英文混合分词服务器3.0正式发布, 绝对稳 ...
- 中英文混合按照首字母排序
中英文混合按照首字母排序 在项目做报表的时候,客户那边提出了默认按照客户的首字母排序,做完才发现有些客户的名字是英文,所以在这边写了一个混合排序的方法.思想就是:如果检查是汉语就把拼音的首字母附在汉字 ...
- python - 输出列表自动对齐(支持中英文混合)
python - 输出列表自动对齐(支持中英文混合) 直接输出列表太难看? 是这样? 还是这样? 废话不多说,直接上代码 #实现中文字符对齐的方法 def aligns(string,length=2 ...
- 中文、英文和中英文混合排序
对Search进行排序 SearchComparator.java中的实现方法compare已不能满足需要 其中涉及到中文.英文或者中英文混合排序,所以,这里使用开源的Pingyin 对起排序 Sea ...
- Windows语音合成(TTS朗读播报)
Windows语音合成(TTS朗读播报) 语音合成有下列技术特点: 1,声音清晰(清脆) 2,语速可以调节 3,占用系统资源少,对系统要求少 4,代码占用空间少 5,编程接口方便 6,声音甜美 7,技 ...
- C#中调用Windows API时的数据类型对应关系
C#中调用Windows API时的数据类型对应关系 原文 C#中调用Windows API时的数据类型对应关系 BOOL=System.Int32 BOOLEAN=System.Int32 BYTE ...
- C#调用windows api的要点
在.Net Framework SDK文档中,关于调用Windows API的指示比较零散,并且其中稍全面一点的是针对Visual Basic .net讲述的.本文将C#中调用API的要点汇集如下,希 ...
最新文章
- LeetCode简单题之将找到的值乘以2
- 《OpenCV3编程入门》学习笔记7 图像变换(五 )直方图均衡化
- 【NOIP必备攻略】 基本noilinux使用方法
- python控制鼠标_如何使用Python在Mac中控制鼠标?
- 计算机图形学------空间摄像机
- python实现app自动签到器_Python实现自动签到脚本代码示例
- Web Components系列(七) ——自定义组件的生命周期
- python 入门基础-Python 如何入门?
- TC流量控制HTB示例
- 斯坦福大学乔布斯演讲之后的感悟
- 深入浅出CChart 每日一课——快乐高四第五十九课 殊途同归,炫彩界面库之C代码风格
- 浏览器被hao123篡改怎么办?
- 程序员面试需要带身份证和毕业证原件吗
- PHP微信扫码关注公众号并登录
- 微信小程序base64实现小程序码
- 2 Sets HDD200 Drilling Mud Recycling System for CPP
- No qualifying bean of type 'com.xxx.xx.service.xxService' available: expected at leas
- (CNS复现)CLAM——Chapter_01
- 基于FPGA的USB接口控制器设计(VHDL)(中)
- ebpf中的percpu map的注意事项与剖析
热门文章
- org.hibernate.AnnotationException: @OneToOne or @ManyToOne on com.demo.pojo.IdCard
- Java多线程第三节-线程的正确停止
- 自己使用过比较好用的VSCode插件
- 【SQL 学习】表连接--natural join 的一个bug
- Linux运维常用命令及知识
- 交换机 VLAN配置基础及实例
- TX2不支持TensorRT INT8,int8 官方参考
- java collection自定义comparator进行排序
- 模拟退火算法- 最短路径问题
- valgrind--CPP程序内存泄露检查工具