diff options
author | Solomon Peachy <pizza@shaftnet.org> | 2020-07-19 15:21:09 -0400 |
---|---|---|
committer | Solomon Peachy <pizza@shaftnet.org> | 2020-07-19 19:32:43 +0000 |
commit | fc4af2062b7bcf888a24c0258e6ce441476ded04 (patch) | |
tree | dc9f6261e2cf9715024f5d6f9b024e6820f9a48b | |
parent | 1748b475a9550227e864cff776e576dd28fb4e95 (diff) | |
download | rockbox-fc4af2062b7bcf888a24c0258e6ce441476ded04.tar.gz rockbox-fc4af2062b7bcf888a24c0258e6ce441476ded04.zip |
rbutil: Support 'espeak-ng' and 'mimic' TTS engines
Change-Id: Ibf6e46254f42b28800351fdb303539b2ec13d422
-rw-r--r-- | rbutil/rbutilqt/base/ttsbase.cpp | 8 | ||||
-rw-r--r-- | rbutil/rbutilqt/base/ttsespeakng.h | 41 | ||||
-rw-r--r-- | rbutil/rbutilqt/base/ttsmimic.h | 41 | ||||
-rw-r--r-- | rbutil/rbutilqt/rbutilqt.pri | 2 |
4 files changed, 92 insertions, 0 deletions
diff --git a/rbutil/rbutilqt/base/ttsbase.cpp b/rbutil/rbutilqt/base/ttsbase.cpp index 3b8384f534..0254c44e1d 100644 --- a/rbutil/rbutilqt/base/ttsbase.cpp +++ b/rbutil/rbutilqt/base/ttsbase.cpp @@ -25,7 +25,9 @@ #include "ttsmssp.h" #include "ttsexes.h" #include "ttsespeak.h" +#include "ttsespeakng.h" #include "ttsflite.h" +#include "ttsmimic.h" #include "ttsswift.h" #if defined(Q_OS_MACX) #include "ttscarbon.h" @@ -43,6 +45,8 @@ void TTSBase::initTTSList() { #if !defined(Q_OS_WIN) ttsList["espeak"] = tr("Espeak TTS Engine"); + ttsList["espeakng"] = tr("Espeak-ng TTS Engine"); + ttsList["mimic"] = tr("Mimic TTS Engine"); #endif ttsList["flite"] = tr("Flite TTS Engine"); ttsList["swift"] = tr("Swift TTS Engine"); @@ -85,6 +89,10 @@ TTSBase* TTSBase::getTTS(QObject* parent,QString ttsName) #endif if(ttsName == "espeak") tts = new TTSEspeak(parent); + else if(ttsName == "espeakng") + tts = new TTSEspeakNG(parent); + else if(ttsName == "mimic") + tts = new TTSMimic(parent); else if(ttsName == "flite") tts = new TTSFlite(parent); else if(ttsName == "swift") diff --git a/rbutil/rbutilqt/base/ttsespeakng.h b/rbutil/rbutilqt/base/ttsespeakng.h new file mode 100644 index 0000000000..367b70b06c --- /dev/null +++ b/rbutil/rbutilqt/base/ttsespeakng.h @@ -0,0 +1,41 @@ +/*************************************************************************** +* __________ __ ___. +* Open \______ \ ____ ____ | | _\_ |__ _______ ___ +* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / +* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < +* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ +* \/ \/ \/ \/ \/ +* +* Copyright (C) 2020 by Solomon Peachy +* +* 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 TTSESPEAKNG_H +#define TTSESPEAKNG_H + +#include <QtCore> +#include "ttsexes.h" + +class TTSEspeakNG : public TTSExes +{ + Q_OBJECT + public: + TTSEspeakNG(QObject* parent=NULL) : TTSExes(parent) + { + m_name = "espeak-ng"; + + m_TTSTemplate = "\"%exe\" %options -w \"%wavfile\" -- \"%text\""; + m_TTSSpeakTemplate = "\"%exe\" %options -- \"%text\""; + m_capabilities = TTSBase::CanSpeak; + } +}; + +#endif diff --git a/rbutil/rbutilqt/base/ttsmimic.h b/rbutil/rbutilqt/base/ttsmimic.h new file mode 100644 index 0000000000..fba4e53fe2 --- /dev/null +++ b/rbutil/rbutilqt/base/ttsmimic.h @@ -0,0 +1,41 @@ +/*************************************************************************** +* __________ __ ___. +* Open \______ \ ____ ____ | | _\_ |__ _______ ___ +* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / +* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < +* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ +* \/ \/ \/ \/ \/ +* +* Copyright (C) 2020 by Solomon Peachy +* +* 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 TTSMIMIC_H +#define TTSMIMIC_H + +#include <QtCore> +#include "ttsexes.h" + +class TTSMimic : public TTSExes +{ + Q_OBJECT + public: + TTSMimic(QObject* parent=NULL) : TTSExes(parent) + { + m_name = "mimic"; + + m_TTSTemplate = "\"%exe\" %options -o \"%wavfile\" -t \"%text\""; + m_TTSSpeakTemplate = "\"%exe\" %options -t \"%text\""; + m_capabilities = TTSBase::CanSpeak; + } +}; + +#endif diff --git a/rbutil/rbutilqt/rbutilqt.pri b/rbutil/rbutilqt/rbutilqt.pri index d9ef1071f4..d88ecac8cf 100644 --- a/rbutil/rbutilqt/rbutilqt.pri +++ b/rbutil/rbutilqt/rbutilqt.pri @@ -115,8 +115,10 @@ HEADERS += \ base/ttsbase.h \ base/ttsexes.h \ base/ttsespeak.h \ + base/ttsespeakng.h \ base/ttsflite.h \ base/ttsfestival.h \ + base/ttsmimic.h \ base/ttsswift.h \ base/ttssapi.h \ base/ttssapi4.h \ |