1 /***************************************************************************
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
9 * Copyright (C) 2007 by Dominik Wenger
10 * $Id: tts.h 15212 2007-10-19 21:49:07Z domonoky $
12 * All files in this archive are subject to the GNU General Public License.
13 * See the file COPYING in the source tree root for full license agreement.
15 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
16 * KIND, either express or implied.
18 ****************************************************************************/
25 #include "rbsettings.h"
36 // function to get a specific tts
37 TTSBase
* getTTS(QString ttsname
);
38 // get the list of tts, nice names
39 QStringList
getTTSList();
42 class TTSBase
: public QObject
47 virtual bool voice(QString text
,QString wavfile
) {return false;}
48 virtual bool start(QString
*errStr
){return false;}
49 virtual bool stop(){return false;}
50 virtual void showCfg(){}
51 virtual bool configOk(){return false;}
53 void setCfg(RbSettings
* sett
){settings
= sett
;}
56 virtual void accept(void){}
57 virtual void reject(void){}
58 virtual void reset(void){}
64 class TTSSapi
: public TTSBase
69 virtual bool voice(QString text
,QString wavfile
);
70 virtual bool start(QString
*errStr
);
72 virtual void showCfg();
73 virtual bool configOk();
75 QStringList
getVoiceList(QString language
);
78 QProcess
* voicescript
;
80 QString defaultLanguage
;
84 QString m_TTSTemplate
;
85 QString m_TTSLanguage
;
91 class TTSExes
: public TTSBase
95 TTSExes(QString name
);
96 virtual bool voice(QString text
,QString wavfile
);
97 virtual bool start(QString
*errStr
);
98 virtual bool stop() {return true;}
99 virtual void showCfg();
100 virtual bool configOk();
109 QString m_TTSTemplate
;
110 QMap
<QString
,QString
> m_TemplateMap
;