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 "ttsfestival.h"
|
||||||
#include "ttssapi.h"
|
#include "ttssapi.h"
|
||||||
|
#include "ttssapi4.h"
|
||||||
#include "ttsexes.h"
|
#include "ttsexes.h"
|
||||||
#if defined(Q_OS_MACX)
|
#if defined(Q_OS_MACX)
|
||||||
#include "ttscarbon.h"
|
#include "ttscarbon.h"
|
||||||
|
@ -42,7 +43,10 @@ void TTSBase::initTTSList()
|
||||||
ttsList["flite"] = tr("Flite TTS Engine");
|
ttsList["flite"] = tr("Flite TTS Engine");
|
||||||
ttsList["swift"] = tr("Swift TTS Engine");
|
ttsList["swift"] = tr("Swift TTS Engine");
|
||||||
#if defined(Q_OS_WIN)
|
#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
|
#endif
|
||||||
#if defined(Q_OS_LINUX)
|
#if defined(Q_OS_LINUX)
|
||||||
ttsList["festival"] = tr("Festival TTS Engine");
|
ttsList["festival"] = tr("Festival TTS Engine");
|
||||||
|
@ -56,36 +60,26 @@ void TTSBase::initTTSList()
|
||||||
TTSBase* TTSBase::getTTS(QObject* parent,QString ttsName)
|
TTSBase* TTSBase::getTTS(QObject* parent,QString ttsName)
|
||||||
{
|
{
|
||||||
|
|
||||||
TTSBase* tts;
|
TTSBase* tts = 0;
|
||||||
#if defined(Q_OS_WIN)
|
#if defined(Q_OS_WIN)
|
||||||
if(ttsName == "sapi")
|
if(ttsName == "sapi")
|
||||||
{
|
|
||||||
tts = new TTSSapi(parent);
|
tts = new TTSSapi(parent);
|
||||||
return tts;
|
else if (ttsName == "sapi4")
|
||||||
}
|
tts = new TTSSapi4(parent);
|
||||||
else
|
else
|
||||||
#endif
|
#elif defined(Q_OS_LINUX)
|
||||||
#if defined(Q_OS_LINUX)
|
|
||||||
if (ttsName == "festival")
|
if (ttsName == "festival")
|
||||||
{
|
|
||||||
tts = new TTSFestival(parent);
|
tts = new TTSFestival(parent);
|
||||||
return tts;
|
|
||||||
}
|
|
||||||
else
|
else
|
||||||
#endif
|
#elif defined(Q_OS_MACX)
|
||||||
#if defined(Q_OS_MACX)
|
|
||||||
if(ttsName == "carbon")
|
if(ttsName == "carbon")
|
||||||
{
|
|
||||||
tts = new TTSCarbon(parent);
|
tts = new TTSCarbon(parent);
|
||||||
return tts;
|
|
||||||
}
|
|
||||||
else
|
else
|
||||||
#endif
|
#endif
|
||||||
if (true) // fix for OS other than WIN or LINUX
|
// fix for OS other than WIN or LINUX
|
||||||
{
|
if (true)
|
||||||
tts = new TTSExes(ttsName,parent);
|
tts = new TTSExes(ttsName, parent);
|
||||||
return tts;
|
return tts;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// get the list of encoders, nice names
|
// 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/ttsexes.h \
|
||||||
base/ttsfestival.h \
|
base/ttsfestival.h \
|
||||||
base/ttssapi.h \
|
base/ttssapi.h \
|
||||||
|
base/ttssapi4.h \
|
||||||
../../tools/wavtrim.h \
|
../../tools/wavtrim.h \
|
||||||
../../tools/voicefont.h \
|
../../tools/voicefont.h \
|
||||||
base/voicefile.h \
|
base/voicefile.h \
|
||||||
|
|
Loading…
Reference in a new issue