详解QtSpeech Qt文本语音输出TTS API

移动开发
QtSpeech是一个Qt封装的跨平台TTS(文本变成语音输出)API,在不同平台下利用系统自带的TTS引擎。在Windows下使用SAPI, 在Mac下使用SpeechSynthesis,而在Linux下使用 Festival.

QtSpeech是一个Qt封装的跨平台TTS(文本变成语音输出)API,在不同平台下利用系统自带的TTS引擎。在Windows下使用SAPI, 在Mac下使用SpeechSynthesis,而在Linux下使用 Festival.

QtSpeech的官方项目主页在:http://lynxline.com/projects/qtspeech

源码git仓库地址则在:http://gitorious.org/qt-speech

QtSpeech的“Hello World”

API的使用非常简单,如果你是同步调用,发音结束后返回,可以使用QtSpeech::say

  1. <blockquote>#include <QtSpeech> 
  2. …  
  3. QtSpeech voice;  
  4. voice.say(“Hello World!”);  
  5.  

如果是异步调用(发音不会阻塞程序运行),则可以使用QtSpeech::tell

  1. <blockquote>#include <QtSpeech> 
  2. …  
  3. QtSpeech * voice = new QtSpeech(this);  
  4. voice->tell(“Hello asynchronous world!”);  
  5.  

如果使用QtSpeech::tell,还可以加入slot函数,在发音结束时回调该slot

  1. voice->tell(“Hello!”, this, SLOT(onSpeechFinished()));  
  2.  

VoiceName可以用于设定发音类型的,比如英语或者法语,意大利语等

  1. QtSpeech::VoiceNames vs = QtSpeech::voices();  
  2. //不过,目前从源代码来看只支持英语  
  3.  

在ubuntu下编译

  1. $ #qtspeech 依赖的tts是festival,所以需要先安装  
  2. $ sudo apt-get install festival festival-dev  
  3. $ sudo apt-get install libasound2-dev  
  4. $ git clone git://gitorious.org/qt-speech/qt-speech.git  
  5. $ cd qt-speech/  
  6. $ qmake QtSpeech.pro  
  7. $ make  
  8. $ #test目录下有可以测试的例子  
  9.  

【编辑推荐】

  1. Windows Phone 7 免费线下培训火热报名中
  2. 特别推荐 大话移动开发之QT-Quick
  3. 利用Necessitas 在Qt上实现Android应用开发
责任编辑:佚名 来源: cuteqt
相关推荐

2011-06-14 17:27:04

QtSpeech Qt

2023-07-06 08:41:20

TTS​Mac​系统

2017-04-04 20:49:27

深度神经人工智能语音合成

2024-03-04 12:32:20

模型训练

2012-07-19 09:11:49

Windows 8

2024-02-04 10:11:37

人工智能

2015-12-30 14:36:31

LinuxeSpeak语音

2017-02-28 08:48:11

科技早新闻

2011-06-24 10:05:51

QT 对象 父对象

2011-06-17 11:10:51

Qt 中文 输出

2011-06-20 17:33:58

Qt MeegoTouch Maemo

2011-06-28 15:01:01

Qt PIMPL

2014-12-30 09:35:16

文字转语音

2011-06-23 14:05:32

Qt 事件机制

2017-10-25 09:51:08

百度

2023-11-07 08:03:43

AIGPT-4

2011-06-20 14:27:57

Qt Embedded

2011-06-24 14:34:17

Qt 小票 打印

2011-06-14 11:48:38

Webkit QT

2011-04-02 09:17:38

点赞
收藏

51CTO技术栈公众号