Add derived SAPI4 class.
Based on the previous change add a derived class for SAPI4 support. Note that SAPI4 support had been disabled, so it's also disabled to not show in the selection dialog for now. Change-Id: Iffda7daafd9327ef8821c4fe4b1b0fc581607f49
This commit is contained in:
parent
6be7dabdd9
commit
469a614349
3 changed files with 59 additions and 20 deletions
|
@ -20,6 +20,7 @@
|
|||
|
||||
#include "ttsfestival.h"
|
||||
#include "ttssapi.h"
|
||||
#include "ttssapi4.h"
|
||||
#include "ttsexes.h"
|
||||
#if defined(Q_OS_MACX)
|
||||
#include "ttscarbon.h"
|
||||
|
@ -42,7 +43,10 @@ void TTSBase::initTTSList()
|
|||
ttsList["flite"] = tr("Flite TTS Engine");
|
||||
ttsList["swift"] = tr("Swift TTS Engine");
|
||||
#if defined(Q_OS_WIN)
|
||||
ttsList["sapi"] = tr("SAPI TTS Engine");
|
||||
#if 0 /* SAPI4 has been disabled since long. Keep support for now. */
|
||||
ttsList["sapi4"] = tr("SAPI4 TTS Engine");
|
||||
#endif
|
||||
ttsList["sapi"] = tr("SAPI5 TTS Engine");
|
||||
#endif
|
||||
#if defined(Q_OS_LINUX)
|
||||
ttsList["festival"] = tr("Festival TTS Engine");
|
||||
|
@ -56,36 +60,26 @@ void TTSBase::initTTSList()
|
|||
TTSBase* TTSBase::getTTS(QObject* parent,QString ttsName)
|
||||
{
|
||||
|
||||
TTSBase* tts;
|
||||
TTSBase* tts = 0;
|
||||
#if defined(Q_OS_WIN)
|
||||
if(ttsName == "sapi")
|
||||
{
|
||||
tts = new TTSSapi(parent);
|
||||
return tts;
|
||||
}
|
||||
else if (ttsName == "sapi4")
|
||||
tts = new TTSSapi4(parent);
|
||||
else
|
||||
#endif
|
||||
#if defined(Q_OS_LINUX)
|
||||
#elif defined(Q_OS_LINUX)
|
||||
if (ttsName == "festival")
|
||||
{
|
||||
tts = new TTSFestival(parent);
|
||||
return tts;
|
||||
}
|
||||
else
|
||||
#endif
|
||||
#if defined(Q_OS_MACX)
|
||||
#elif defined(Q_OS_MACX)
|
||||
if(ttsName == "carbon")
|
||||
{
|
||||
tts = new TTSCarbon(parent);
|
||||
return tts;
|
||||
}
|
||||
else
|
||||
#endif
|
||||
if (true) // fix for OS other than WIN or LINUX
|
||||
{
|
||||
tts = new TTSExes(ttsName,parent);
|
||||
// fix for OS other than WIN or LINUX
|
||||
if (true)
|
||||
tts = new TTSExes(ttsName, parent);
|
||||
return tts;
|
||||
}
|
||||
}
|
||||
|
||||
// get the list of encoders, nice names
|
||||
|
|
44
rbutil/rbutilqt/base/ttssapi4.h
Normal file
44
rbutil/rbutilqt/base/ttssapi4.h
Normal file
|
@ -0,0 +1,44 @@
|
|||
/***************************************************************************
|
||||
* __________ __ ___.
|
||||
* Open \______ \ ____ ____ | | _\_ |__ _______ ___
|
||||
* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
|
||||
* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
|
||||
* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
|
||||
* \/ \/ \/ \/ \/
|
||||
*
|
||||
* Copyright (C) 2012 by Dominik Riebeling
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version 2
|
||||
* of the License, or (at your option) any later version.
|
||||
*
|
||||
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
||||
* KIND, either express or implied.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef TTSSAPI4_H
|
||||
#define TTSSAPI4_H
|
||||
|
||||
#include "ttsbase.h"
|
||||
#include "ttssapi.h"
|
||||
|
||||
class TTSSapi4: public TTSSapi
|
||||
{
|
||||
//! Enum to identify the settings
|
||||
Q_OBJECT
|
||||
public:
|
||||
TTSSapi4(QObject* parent=NULL)
|
||||
{
|
||||
m_TTSTemplate = "cscript //nologo \"%exe\" "
|
||||
"/language:%lang /voice:\"%voice\" "
|
||||
"/speed:%speed \"%options\" /sapi4";
|
||||
m_TTSVoiceTemplate = "cscript //nologo \"%exe\" "
|
||||
"/language:%lang /listvoices /sapi4";
|
||||
m_TTSType = "sapi4";
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
#endif
|
|
@ -113,6 +113,7 @@ HEADERS += \
|
|||
base/ttsexes.h \
|
||||
base/ttsfestival.h \
|
||||
base/ttssapi.h \
|
||||
base/ttssapi4.h \
|
||||
../../tools/wavtrim.h \
|
||||
../../tools/voicefont.h \
|
||||
base/voicefile.h \
|
||||
|
|
Loading…
Reference in a new issue