• WIN7下使用Qt调用微软TTS进行文本朗读


    最近研究了下调用微软TTS引擎进行朗读的相关资料,发现其实很简单,特发文与众位博友共享。

    首先看看微软MSDN官方文档是如何调用TTS的

    Microsoft TTS simple sample

    可以发现其实很简单,就是初始化COM后,创建ISpVoice的实例调用Speak方法即可,如果想更加深入的了解这方面的知识,可以查阅MSDN,http://msdn.microsoft.com/en-us/library/ee125082(v=VS.85).aspx

    Qt上使用COM非常简单,ActivityQt是Qt上用了和COM打交道,由于是调用COM,我们使用QAxObject即可满足要求。

    首先设计一个接口

    ITTS

    虽然我们是再Win7上使用,由于以后可能还有开发XP上的、Linux上的TTS,所以我们定义一个接口,在我们的调用类中只需要定义一个接口的指针就可以,然后根据实际的环境在初始化中初始化不同环境上的TTS实例,这个我们以后再来演示

    根据Win7上的TTS,我们来创建Win7TTS类,继承于我们上面定义的ITTS

    Win7TS

    _voice 就是我们用来创建ISpVoice Com对象的成员

    Win7TTS

    TTS的框架已经搭好了,现在让我们试试TTS的魅力吧,稍后上传一个TTS的SAMPLE,可以下载下来玩玩!

    0BFR2ZM{]3H9]GA9ZOQ}~82

    Win7 TTS 示例 

  • 相关阅读:
    【矩阵乘】【DP】【codevs 1305】Freda的道路
    Giraph源代码分析(九)—— Aggregators 原理解析
    Dubbo框架应用之(三)--Zookeeper注冊中心、管理控制台的安装及解说
    Oracle中对数字加汉字的排序(完好)
    PKU-2104-K-th Number
    IE下推断IE版本号的语句
    自己定义View时,用到Paint Canvas的一些温故,简单的帧动画(动画一 ,"掏粪男孩Gif"顺便再提提onWindowFocusChanged)
    <html>
    测试一个网段主机在线情况,禁ping的情况除外
    glance image-create --name "wj_js_company_img" --file a0e1c7fa-d6d3-410f-9bb5-e699e342db91 --disk-format qcow2 --container-format bare --progress --visibility public
  • 原文地址:https://www.cnblogs.com/rockhawk/p/2164016.html
Copyright © 2020-2023  润新知