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 中英文混合朗读相关推荐

  1. TTS中英文混合朗读的完全设计实现

    中英文混合朗读一直是个难点,即在一段文本中要将中文和英文分离出来进行分别朗读,又不能打乱朗读的次序,所以我们设计如下的两种方法,每种方法都有各自的优点和缺点. ①采用同步朗读方式进行混合朗读: 将朗读 ...

  2. Python调用Windows API实现文本朗读

    异想之旅:本人原创博客完全手敲,绝对非搬运,全网不可能有重复:本人无团队,仅为技术爱好者进行分享,所有内容不牵扯广告.本人所有文章仅在CSDN和个人博客(一定是异想之旅域名)发布,除此之外全部是盗文! ...

  3. C#中英文混合朗读文本代码

    //首先要引用一个类库SpeechLib.dll using System; using System.Collections.Generic; using System.Windows.Forms; ...

  4. 我用纯C语言开发的中英文混合分词服务器3.0正式发布,词库190多万词,每秒切分5万+,同时提供 c、java、C#、delphi、js调用范例

    我用纯C语言开发的中英文混合分词服务器3.0正式发布,词库190多万词,每秒切分5万+,同时提供 c.java.C#.delphi.js调用范例 百万商业圈中英文混合分词服务器3.0正式发布, 绝对稳 ...

  5. 中英文混合按照首字母排序

    中英文混合按照首字母排序 在项目做报表的时候,客户那边提出了默认按照客户的首字母排序,做完才发现有些客户的名字是英文,所以在这边写了一个混合排序的方法.思想就是:如果检查是汉语就把拼音的首字母附在汉字 ...

  6. python - 输出列表自动对齐(支持中英文混合)

    python - 输出列表自动对齐(支持中英文混合) 直接输出列表太难看? 是这样? 还是这样? 废话不多说,直接上代码 #实现中文字符对齐的方法 def aligns(string,length=2 ...

  7. 中文、英文和中英文混合排序

    对Search进行排序 SearchComparator.java中的实现方法compare已不能满足需要 其中涉及到中文.英文或者中英文混合排序,所以,这里使用开源的Pingyin 对起排序 Sea ...

  8. Windows语音合成(TTS朗读播报)

    Windows语音合成(TTS朗读播报) 语音合成有下列技术特点: 1,声音清晰(清脆) 2,语速可以调节 3,占用系统资源少,对系统要求少 4,代码占用空间少 5,编程接口方便 6,声音甜美 7,技 ...

  9. C#中调用Windows API时的数据类型对应关系

    C#中调用Windows API时的数据类型对应关系 原文 C#中调用Windows API时的数据类型对应关系 BOOL=System.Int32 BOOLEAN=System.Int32 BYTE ...

  10. C#调用windows api的要点

    在.Net Framework SDK文档中,关于调用Windows API的指示比较零散,并且其中稍全面一点的是针对Visual Basic .net讲述的.本文将C#中调用API的要点汇集如下,希 ...

最新文章

  1. LeetCode简单题之将找到的值乘以2
  2. 《OpenCV3编程入门》学习笔记7 图像变换(五 )直方图均衡化
  3. 【NOIP必备攻略】 基本noilinux使用方法
  4. python控制鼠标_如何使用Python在Mac中控制鼠标?
  5. 计算机图形学------空间摄像机
  6. python实现app自动签到器_Python实现自动签到脚本代码示例
  7. Web Components系列(七) ——自定义组件的生命周期
  8. python 入门基础-Python 如何入门?
  9. TC流量控制HTB示例
  10. 斯坦福大学乔布斯演讲之后的感悟
  11. 深入浅出CChart 每日一课——快乐高四第五十九课 殊途同归,炫彩界面库之C代码风格
  12. 浏览器被hao123篡改怎么办?
  13. 程序员面试需要带身份证和毕业证原件吗
  14. PHP微信扫码关注公众号并登录
  15. 微信小程序base64实现小程序码
  16. 2 Sets HDD200 Drilling Mud Recycling System for CPP
  17. No qualifying bean of type 'com.xxx.xx.service.xxService' available: expected at leas
  18. (CNS复现)CLAM——Chapter_01
  19. 基于FPGA的USB接口控制器设计(VHDL)(中)
  20. ebpf中的percpu map的注意事项与剖析

热门文章

  1. org.hibernate.AnnotationException: @OneToOne or @ManyToOne on com.demo.pojo.IdCard
  2. Java多线程第三节-线程的正确停止
  3. 自己使用过比较好用的VSCode插件
  4. 【SQL 学习】表连接--natural join 的一个bug
  5. Linux运维常用命令及知识
  6. 交换机 VLAN配置基础及实例
  7. TX2不支持TensorRT INT8,int8 官方参考
  8. java collection自定义comparator进行排序
  9. 模拟退火算法- 最短路径问题
  10. valgrind--CPP程序内存泄露检查工具