summaryrefslogtreecommitdiff
path: root/plugins/WinterSpeak/src/SpeechInterface.cpp
diff options
context:
space:
mode:
authorPhilip Schell <github.com@blubbfish.net>2013-10-19 13:05:02 +0000
committerPhilip Schell <github.com@blubbfish.net>2013-10-19 13:05:02 +0000
commit397e25f2b71347c7c83495fe5b25496ff3b02b75 (patch)
tree71f6ad2ef525218541a7a35cc659b4fb7bf047d6 /plugins/WinterSpeak/src/SpeechInterface.cpp
parent9e786b686fae94e71279a797047a91ffdc4b0443 (diff)
WinterSpeak: ticket:269 WinterSpeak now rewritten
git-svn-id: http://svn.miranda-ng.org/main/trunk@6532 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'plugins/WinterSpeak/src/SpeechInterface.cpp')
-rw-r--r--plugins/WinterSpeak/src/SpeechInterface.cpp68
1 files changed, 68 insertions, 0 deletions
diff --git a/plugins/WinterSpeak/src/SpeechInterface.cpp b/plugins/WinterSpeak/src/SpeechInterface.cpp
new file mode 100644
index 0000000000..500165f356
--- /dev/null
+++ b/plugins/WinterSpeak/src/SpeechInterface.cpp
@@ -0,0 +1,68 @@
+#include "Common.h"
+#include "SpeechInterface.h"
+#include "SpeechApi51.h"
+
+
+SpeechInterface::SpeechInterface()
+{
+}
+
+//------------------------------------------------------------------------------
+SpeechInterface::~SpeechInterface()
+{
+}
+
+//------------------------------------------------------------------------------
+TextToSpeech * SpeechInterface::createTts(std::wstring &engine) const
+{
+ TextToSpeech *tts = 0;
+
+ /*if (SpeechApi40a::getDescription() == engine)
+ {
+ tts = new SpeechApi40a();
+ }
+ else*/
+ if (SpeechApi51::getDescription() == engine)
+ {
+ tts = new SpeechApi51();
+ }
+
+ return tts;
+}
+
+//------------------------------------------------------------------------------
+void SpeechInterface::configureTts(TextToSpeech *tts, const VoiceDesc &desc) const
+{
+ if (!tts)
+ {
+ return;
+ }
+
+ tts->setVoice(desc.voice);
+ tts->setVolume(desc.volume);
+ tts->setRate(desc.rate);
+ tts->setPitch(desc.pitch);
+ tts->load();
+}
+
+//------------------------------------------------------------------------------
+std::vector<std::wstring> SpeechInterface::getAvailableEngines()
+{
+ std::vector<std::wstring> engines;
+
+ /*SpeechApi40a sapi40a;
+ if (sapi40a.isAvailable())
+ {
+ engines.push_back(SpeechApi40a::getDescription());
+ }*/
+
+ SpeechApi51 sapi51;
+ if (sapi51.isAvailable())
+ {
+ engines.push_back(SpeechApi51::getDescription());
+ }
+
+ return engines;
+}
+
+//==============================================================================