summaryrefslogtreecommitdiff
path: root/rbutil/rbutilqt/base/ttssapi.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'rbutil/rbutilqt/base/ttssapi.cpp')
-rw-r--r--rbutil/rbutilqt/base/ttssapi.cpp23
1 files changed, 12 insertions, 11 deletions
diff --git a/rbutil/rbutilqt/base/ttssapi.cpp b/rbutil/rbutilqt/base/ttssapi.cpp
index 603e7c5559..320ee1191a 100644
--- a/rbutil/rbutilqt/base/ttssapi.cpp
+++ b/rbutil/rbutilqt/base/ttssapi.cpp
@@ -20,6 +20,7 @@
20#include "utils.h" 20#include "utils.h"
21#include "rbsettings.h" 21#include "rbsettings.h"
22#include "systeminfo.h" 22#include "systeminfo.h"
23#include "Logger.h"
23 24
24TTSSapi::TTSSapi(QObject* parent) : TTSBase(parent) 25TTSSapi::TTSSapi(QObject* parent) : TTSBase(parent)
25{ 26{
@@ -89,7 +90,7 @@ void TTSSapi::saveSettings()
89 90
90void TTSSapi::updateVoiceList() 91void TTSSapi::updateVoiceList()
91{ 92{
92 qDebug() << "[TTSSapi] updating voicelist"; 93 LOG_INFO() << "updating voicelist";
93 QStringList voiceList = getVoiceList(getSetting(eLANGUAGE)->current().toString()); 94 QStringList voiceList = getVoiceList(getSetting(eLANGUAGE)->current().toString());
94 getSetting(eVOICE)->setList(voiceList); 95 getSetting(eVOICE)->setList(voiceList);
95 if(voiceList.size() > 0) getSetting(eVOICE)->setCurrent(voiceList.at(0)); 96 if(voiceList.size() > 0) getSetting(eVOICE)->setCurrent(voiceList.at(0));
@@ -122,15 +123,15 @@ bool TTSSapi::start(QString *errStr)
122 execstring.replace("%voice",m_TTSVoice); 123 execstring.replace("%voice",m_TTSVoice);
123 execstring.replace("%speed",m_TTSSpeed); 124 execstring.replace("%speed",m_TTSSpeed);
124 125
125 qDebug() << "[TTSSapi] Start:" << execstring; 126 LOG_INFO() << "Start:" << execstring;
126 voicescript = new QProcess(NULL); 127 voicescript = new QProcess(NULL);
127 //connect(voicescript,SIGNAL(readyReadStandardError()),this,SLOT(error())); 128 //connect(voicescript,SIGNAL(readyReadStandardError()),this,SLOT(error()));
128 voicescript->start(execstring); 129 voicescript->start(execstring);
129 qDebug() << "[TTSSapi] wait for process"; 130 LOG_INFO() << "wait for process";
130 if(!voicescript->waitForStarted()) 131 if(!voicescript->waitForStarted())
131 { 132 {
132 *errStr = tr("Could not start SAPI process"); 133 *errStr = tr("Could not start SAPI process");
133 qDebug() << "[TTSSapi] starting process timed out!"; 134 LOG_ERROR() << "starting process timed out!";
134 return false; 135 return false;
135 } 136 }
136 137
@@ -161,7 +162,7 @@ QString TTSSapi::voiceVendor(void)
161 while((vendor = voicestream->readLine()).isEmpty()) 162 while((vendor = voicestream->readLine()).isEmpty())
162 QCoreApplication::processEvents(); 163 QCoreApplication::processEvents();
163 164
164 qDebug() << "[TTSSAPI] TTS vendor:" << vendor; 165 LOG_INFO() << "TTS vendor:" << vendor;
165 if(!keeprunning) { 166 if(!keeprunning) {
166 stop(); 167 stop();
167 } 168 }
@@ -184,12 +185,12 @@ QStringList TTSSapi::getVoiceList(QString language)
184 execstring.replace("%exe",m_TTSexec); 185 execstring.replace("%exe",m_TTSexec);
185 execstring.replace("%lang",language); 186 execstring.replace("%lang",language);
186 187
187 qDebug() << "[TTSSapi] Start:" << execstring; 188 LOG_INFO() << "Start:" << execstring;
188 voicescript = new QProcess(NULL); 189 voicescript = new QProcess(NULL);
189 voicescript->start(execstring); 190 voicescript->start(execstring);
190 qDebug() << "[TTSSapi] wait for process"; 191 LOG_INFO() << "wait for process";
191 if(!voicescript->waitForStarted()) { 192 if(!voicescript->waitForStarted()) {
192 qDebug() << "[TTSSapi] process startup timed out!"; 193 LOG_INFO() << "process startup timed out!";
193 return result; 194 return result;
194 } 195 }
195 voicescript->closeWriteChannel(); 196 voicescript->closeWriteChannel();
@@ -197,7 +198,7 @@ QStringList TTSSapi::getVoiceList(QString language)
197 198
198 QString dataRaw = voicescript->readAllStandardError().data(); 199 QString dataRaw = voicescript->readAllStandardError().data();
199 if(dataRaw.startsWith("Error")) { 200 if(dataRaw.startsWith("Error")) {
200 qDebug() << "[TTSSapi] Error:" << dataRaw; 201 LOG_INFO() << "Error:" << dataRaw;
201 } 202 }
202 result = dataRaw.split(";",QString::SkipEmptyParts); 203 result = dataRaw.split(";",QString::SkipEmptyParts);
203 if(result.size() > 0) 204 if(result.size() > 0)
@@ -226,7 +227,7 @@ TTSStatus TTSSapi::voice(QString text,QString wavfile, QString *errStr)
226{ 227{
227 (void) errStr; 228 (void) errStr;
228 QString query = "SPEAK\t"+wavfile+"\t"+text; 229 QString query = "SPEAK\t"+wavfile+"\t"+text;
229 qDebug() << "[TTSSapi] voicing" << query; 230 LOG_INFO() << "voicing" << query;
230 // append newline to query. Done now to keep debug output more readable. 231 // append newline to query. Done now to keep debug output more readable.
231 query.append("\r\n"); 232 query.append("\r\n");
232 *voicestream << query; 233 *voicestream << query;
@@ -236,7 +237,7 @@ TTSStatus TTSSapi::voice(QString text,QString wavfile, QString *errStr)
236 voicescript->waitForReadyRead(); 237 voicescript->waitForReadyRead();
237 238
238 if(!QFileInfo(wavfile).isFile()) { 239 if(!QFileInfo(wavfile).isFile()) {
239 qDebug() << "[TTSSapi] output file does not exist:" << wavfile; 240 LOG_ERROR() << "output file does not exist:" << wavfile;
240 return FatalError; 241 return FatalError;
241 } 242 }
242 return NoError; 243 return NoError;