首页 > (转) 使用Speech SDK 5.1文字转音频

(转) 使用Speech SDK 5.1文字转音频

下载地址: http://www.microsoft.com/en-us/download/details.aspx?id=10121

SeppchSDK51.exe 语音合成引擎

SpeechSDK51LangPack.exe 支持日语和简体中文需要这个支持。

SpeechSDK51MSM.exe 如果要将引擎作为产品的一部分发布需要这个。

Sp5TTintXP.exe XP下Mike和Mary语音

sapi.chm 文档

1.安装SpeechSDK51.EXE

2.安装SpeechSDK51LangPack.exe 来支持中文

3.可以在安装文件夹找到一些示例文件,示例文件里可以找到一个生成好的Interop.SpeechLib.dll的文件,当然也可以自己生成这个文件.

简单的代码

1.生成wav文件,其中filename为生成的文件名。

SpeechVoiceSpeakFlags SpFlags = SpeechVoiceSpeakFlags.SVSFlagsAsync;
SpVoice Voice = new SpVoice();SpeechStreamFileMode SpFileMode = SpeechStreamFileMode.SSFMCreateForWrite;SpFileStream SpFileStream = new SpFileStream();
SpFileStream.Open(filename, SpFileMode, false);Voice.AudioOutputStream = SpFileStream;
Voice.Speak(text, SpFlags);
Voice.WaitUntilDone(Timeout.Infinite); 
SpFileStream.Close(); 
    1. wav文件转换为MP3

      这里需要依赖lame的程序[http://www.rarewares.org/mp3-lame-bundle.php]

      string outfile = "-b 32 --resample 22.05 -m m "" + fileName + "" "" + fileName.Replace(".wav", ".mp3") + """;

      System.Diagnostics.ProcessStartInfo psi = new System.Diagnostics.ProcessStartInfo();

      psi.FileName = dir + "lame.exe";

      psi.Arguments = outfile;

      psi.WindowStyle = System.Diagnostics.ProcessWindowStyle.Minimized;

      System.Diagnostics.Process p = System.Diagnostics.Process.Start(psi);

      if (waitFlag)

      {

      p.WaitForExit();

      }

转载于:https://www.cnblogs.com/candyzhmm/p/5692892.html

更多相关:

  • 本文来自 运维人生 ,作者:fly是个稻草人链接:http://www.ywadmin.com/?id=76误删除linux系统文件了?不用急,本文将给你一个恢复linux文件的方法,让你轻松应对运维中的各风险问题。方法总比问题多~说在前面的话针对日常维护操作,难免会出现文件误删除的操作。大家熟知linux文件系统不同win有回收...

  • 原文来自SecIN社区—作者:WiHat0x00 什么是WebShell渗透测试工作的一个阶段性目标就是获取目标服务器的操作控制权限,于是WebShell便应运而生。Webshell中的WEB就是web服务,shell就是管理攻击者与操作系统之间的交互。Webshell被称为攻击者通过Web服务器端口对Web服务器有一定的操作权限,而...

  • 断电时文件系统发生了什么?硬盘又发生了什么?下一次开机时写到一半的文件在系统层面还在吗?在底层还在吗?更进一步的, 文件系统如何保证事务性, 会不会存在某种极端情况导致例如最后几个bit还没写完, 文件系统却认为它成功了的情况?回答不限任何文件系统,谢谢!下面是「北极」的回复分享断电的一瞬间,很多事情是无法确定的:1. 你无法确定...

  • 接到项目需求。需要搭建一个页面进行交互,慢慢来b (2).jpg使用python django框架进行页面的搭建在项目文件下打开窗口,输入命令;django-admin startproject helloword#在文件helloword/helloword/创建view.py在view.py文件中输入以代码from django....

  • 常见的错误集合解决方案(一)No.1提示错误'Microsoft.VC90.CRT,version="9.0.21022.8"把Microsoft.NET Framework 3.5.1下面的全部勾选上。No.2解决Qt Designer设计的图标但是VS生成不显示问题描述:在Qt designer中为菜单栏和工具栏设计的图标,但是...

  • 一、代码结构概览1.核心部分configs:储存各种网络的yaml配置文件datasets:存放数据集的地方detectron2:运行代码的核心组件tools:提供了运行代码的入口以及一切可视化的代码文件。2.Tutorial部分demo:显而易见就是demodocs: 同样显而易见。。tests:提供了一些测试代码projects:...

  •     我刚刚接手这个项目的时候就被一系列不知所措的文件命名给深深的震惊了,那种振聋发聩不亚于听到赌王离世的消息。 首先请看,文件本来是用于处理“请假审批”,但是文件名居然叫做“teaApprove”,不要欺负我的初中英语不好,这个teaApprove我第一个感觉就是和“喝茶、茶叶”有关的业务,可是和我们这个项目八竿子打不着...

  • 这个问题简单,不做过多描述,如题所述,如果因为这个导致错误,请安装 npm install stylus-loader css-loader style-loader -D...

  • 使用这个宏TS_VERSION_MAOR来判断,这个宏定义在编译时生成在apidefs.h,它包含在ts/ts.h中,所以请在插件这包含...

  • linux valgrind Memcheck–内存检查工具 使用方法: 注意,这里要用debug版本,如果是release的运行文件,则用debug编译出来的可执行文件替换 输出到终端: valgrind --tool=memcheck --leak-check=full ./test.out 输出到文件: valgri...