• c# 语音


    原文连接:http://blog.sina.com.cn/s/blog_6cf3e9940100pqq5.html

    项目添加引用:Microsoft Speech Object Libray
    下面这个例子可以播放指定音频文件,而且还可以读字符串:

    /// <summary>

            /// 播放声音文件

            /// </summary>

            /// <param name="FileName">文件全名</param>

            public void PlaySound(string FileName)

            {//要加载COM组件:Microsoft speech object Library

                if (!System.IO.File.Exists(FileName))

                {

                    return;

                }

                SpeechLib.SpVoiceClass pp = new SpeechLib.SpVoiceClass();

     

                SpeechLib.SpFileStreamClass spFs = new SpeechLib.SpFileStreamClass();

     

                spFs.Open(FileName, SpeechLib.SpeechStreamFileMode.SSFMOpenForRead, true);

                SpeechLib.ISpeechBaseStream Istream = spFs as SpeechLib.ISpeechBaseStream;

                pp.SpeakStream(Istream, SpeechLib.SpeechVoiceSpeakFlags.SVSFIsFilename);

                spFs.Close();

            }

    以上文章来源:百度空间#记住的忘记的#http://hi.baidu.com/jackeyrain/blog/item/12251e3fa8acb9c47d1e7188.html

     

    下面来细分下SpVoice类,属性,方法,事件

    属性:

        'AlertBoundary' 分隔类型,当属性没有同,发生的事情便没有同

        'AllowAudioOutputFormatChangesOnNextSet 容许用户能否能调整音频格局

        'AudioOutputStream 通功当属性取得由对于象SpFileStream翻开的白件数据淌,然后通功speak方式朗诵进去

        'EventInterests 取AlertBoundary相似,用来产惹事件的类型

        'Priority 优先权

        'Rate 朗读快度

        'Voice 声响类型

        'Volume 声响大小

    方法:

        GetVoices 到得声响类型

        'Speak 开端朗诵

        'Pause 暂停

        'Resume 自暂停处开端朗读

        'Skip 跳功若做双词或者句子

        'SpeakStream 朗读白件数据淌

        'WaitUntilDone 延迟必定时光,双位为毫秒

    事件:

        'Word 每读完一个双词即发生一次当事情

        'VoiceChange 声音转变便产生

        'Phoneme 每个音位产生

        'EndStream 朗诵完毕后发生

    speech.Rate = 5;

    speech.Volume = 100;

    speech.Voice = speech.GetVoices(string.Empty, string.Empty).Item(3);  //取得系统声音类型

    private void SpeechSpeak(string SpeakString)

    {

    speech.Speak(SpeakString, SpeechVoiceSpeakFlags.SVSFlagsAsync);

     }

     

    SpVoiceClass详解

    属性

    描述

    AlertBoundary

    取得或设置停顿分界线。

    AllowAudioOutputFormatChangesOnNextSet

    设置是否允许声音自动调整到合适状态以适应其音频输出。

    AudioOutput

    .取得或设置当前声音使用的的音频输出对象

    AudioOutputStream

    取得或设置当前声音使用的的音频输出流对象。

    EventInterests

    取得或设置当前声音返回的事件类型。

    Priority

    取得或设置声音的优先级。

    Rate

    取得或设置阅读的速度。

    Status

    返回一个ISpeechVoiceStatus 对象用于显示当前阅读和事件的状态

    SynchronousSpeakTimeout

    取得或设置一个时间间隔,用于标识多久未获得一个输出设备后,一个同步的Speak SpeakStream将终止,以毫秒计算。

    Voice

    取得或设置发音对象。

    Volume

    取得或设置声音的大小 

     

    方法

    描述

    DisplayUI

    是否在控制面板中展示详细设置。

    GetAudioOutputs

    返回一个可用的音频输出标记。

    GetVoices

    返回一个可用的发音对象。

    IsUISupported

    决定是否能通过控制棉板的音频设置来控制。

    Pause

    暂停朗读。.

    Resume

    恢复暂停,继续播放。

    Skip

    在当前输入的文本流中向前或向后跳一定距离再播放。

    Speak

    阅读一个字符串。

    SpeakCompleteEvent

    得到一个朗读完毕的时间句柄

    SpeakStream

    朗读一个文本流或一个声音文件。

    WaitUntilDone

    阻塞进程,直到声音播放完毕或者超时。

  • 相关阅读:
    nfs-client-provisioner 利用NFS动态提供Kubernetes后端存储卷
    docker-compose简易编写和模板命令
    shell脚本自动过滤尝试多次连接ip并添加到系统黑名单
    Centos 升级glibc 亲测好用
    centos安装Jenkins报错
    centos8 安装docker启动失败
    cenots7 rpm 包升级ssh
    python备份文件(简易)
    Docker 容器基本操作(基础)
    Docker 环境下如何配置你的镜像(基础)
  • 原文地址:https://www.cnblogs.com/chengjunwei/p/3406755.html
Copyright © 2020-2023  润新知