zoukankan      html  css  js  c++  java
  • (转) 使用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();
        }

  • 相关阅读:
    django-debug-toolbar的配置以及使用
    Django+telnetlib实现webtelnet
    Centos7 安装 telnet 服务
    Django+paramiko实现webshell
    Zabbix 历史数据存储到 Elasticsearch
    CA和自签证书
    linux加密算法与应用
    LVM拆除pv对应的磁盘
    目录迁移
    添加一个swap设备
  • 原文地址:https://www.cnblogs.com/candyzhmm/p/5692892.html
Copyright © 2011-2022 走看看