diff options
| author | Dominik Riebeling <Dominik.Riebeling@gmail.com> | 2012-09-09 11:31:05 +0200 |
|---|---|---|
| committer | Dominik Riebeling <Dominik.Riebeling@gmail.com> | 2012-09-09 12:07:53 +0200 |
| commit | a1b780e670a0a3c7e7a32b7e62cf8d3e371d6d4b (patch) | |
| tree | 41ca343074c02db94df553ee302cf5b414a13a2c /tools/sapi_voice.vbs | |
| parent | 469a614349070eb5731acf96988186b2a95493ad (diff) | |
| download | rockbox-a1b780e670a0a3c7e7a32b7e62cf8d3e371d6d4b.zip rockbox-a1b780e670a0a3c7e7a32b7e62cf8d3e371d6d4b.tar.gz rockbox-a1b780e670a0a3c7e7a32b7e62cf8d3e371d6d4b.tar.bz2 rockbox-a1b780e670a0a3c7e7a32b7e62cf8d3e371d6d4b.tar.xz | |
Add support for Microsoft Speech Platform.
MSSP is accessible via vbs by simply changing the object to be used (both
SAPI5 and MSSP use the ISpVoice COM interface). Add command line parameter to
sapi_voice.vbs to switch the COM object used, and add the necessary
implementation of the SAPI class to Rockbox Utility.
Important: you will need to install the Speech Runtime separately and install
the version matching the bitsize of Rockbox Utility. I.e. you will need to
install the x86 version even on a x64 machine (unless you build a 64bit binary
of Rockbox Utility).
Change-Id: If760cd69c556c17a2ae539965d0941d16fdc10e1
Diffstat (limited to 'tools/sapi_voice.vbs')
| -rw-r--r-- | tools/sapi_voice.vbs | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/tools/sapi_voice.vbs b/tools/sapi_voice.vbs index a8b98ac..c6c2c69 100644 --- a/tools/sapi_voice.vbs +++ b/tools/sapi_voice.vbs @@ -39,6 +39,7 @@ Const STDERR = 2 Dim oShell, oArgs, oEnv Dim oFSO, oStdIn, oStdOut Dim bVerbose, bSAPI4, bList +Dim bMSSP Dim sLanguage, sVoice, sSpeed, sName, sVendor Dim oSpVoice, oSpFS ' SAPI5 voice and filestream @@ -60,6 +61,7 @@ bVerbose = (oEnv("V") <> "") Set oArgs = WScript.Arguments.Named bSAPI4 = oArgs.Exists("sapi4") +bMSSP = oArgs.Exists("mssp") bList = oArgs.Exists("listvoices") sLanguage = oArgs.Item("language") sVoice = oArgs.Item("voice") @@ -121,20 +123,25 @@ If bSAPI4 Then ' Speed selection If sSpeed <> "" Then oTTS.Speed = sSpeed - + ' Get vendor information sVendor = oTTS.MfgName(nMode) Else ' SAPI5 ' Create SAPI5 object - Set oSpVoice = CreateObject("SAPI.SpVoice") + If bMSSP Then + Set oSpVoice = CreateObject("speech.SpVoice") + Else + Set oSpVoice = CreateObject("SAPI.SpVoice") + End If If Err.Number <> 0 Then - WScript.StdErr.WriteLine "Error - could not get SpVoice object." _ + WScript.StdErr.WriteLine "Error " & Err.Number _ + & " - could not get SpVoice object." _ & " SAPI 5 not installed?" WScript.Quit 1 End If - - If bList Then + + If bList Then ' Just list available voices for the selected language For Each nLangID in LangIDs(sLanguage) sSelectString = "Language=" & Hex(nLangID) |