[FIXED] Google TTS engine is no more working

make sure you selected the 2,000,000 Characters (I assume your using MS TTS)

https://datamarket.azure.com/dataset/bing/microsofttranslator

if your using google, it’s hit and miss because google of side issues[/quote]
Thanks for input. I always used Google, and my native tounge worked pretty smoothly for a long time. Now I can’t even use En-us.

where did you change this. I can’t find it on the site?[/quote]

You change it within the vera plugin: change the language from “en” to “en-CA” on the TTS page of the Sonos device.[/quote]

Beautiful. thanks.

make sure you selected the 2,000,000 Characters (I assume your using MS TTS)

https://datamarket.azure.com/dataset/bing/microsofttranslator

if your using google, it’s hit and miss because google of side issues[/quote]
Thanks for input. I always used Google, and my native tounge worked pretty smoothly for a long time. Now I can’t even use En-us.[/quote]

I liked the google tts too, but they just have not been reliable anymore

I switched to ms tts with the “en-CA”, and it has been very reliable

instructions for setting up the ms tts are in the first post here (in case anyone looking for)

http://forum.micasaverde.com/index.php/topic,33223.0.html

[quote=“lolodomo”]To setup the engine, you will have first to do step 1 and step 2 described here: Try Microsoft Translator for free - Microsoft Translator for Business
You have more details here: Azure AI Translator documentation - quickstarts, tutorials, API reference - Azure AI services | Microsoft Learn (you have to do step 1 to 4)
As a result, you will get your credentials.
Then, you just have to set your client id and client secret in the TTS tab of the plugin.

The quality of the speech is very good, even better than Google for French. The speech is just a little too fast in my opinion. Microsoft server seems to be very fast to provide the MP3 file.

In your scenes, you have to use “MICROSOFT” to identify this engine.[/quote]

just make sure you select the 2 million free characters per month, I did not when I first set up and that gave me a lot of grief trying to figure out why not working right

Did all that…I assume Client ID is the Customer ID and Account Key is the Microsoft Client Secret.

Reloaded and rebooted, and it’s quiet.

I don’t suppose the solution to using Google as the TTS has anything to do with this solution that was noticed on a Fibaro forum? I noticed this feature also stopped working as soon as the Sonos firmware updated.

Not that it matters greatly, the MS TTS works just fine.

Well, meanwhile someone finds the way to adapt the scene to Sonos 5.5 release, or Sonos releases a new version that performs like the old one, I have found a way to overcome the problem, changing only three lines of code. I have tested it for 48h and it is working fine. The idea is as follows: Since, like I posted somewhere above in this thread, when TTS stops working, if you remove the "ie=UTF-8" character set definition in the Sonos.PlayTTS function of the Virtual Device (main loop), the TTS starts working again... until something else (internet radio or locally stored files) is played through Sonos. Then it fails to play TTS again, until you replace back "ie=UTF-8". Unfortunately, I have not found a simple way to verify automatically if the message actually plays or not. Therefore, what I have done is a small modification in the code that sends both requests to the API: one with the standard charset, and a second one with the UTF-8. Since only one of those will work at a time, Sonos will not repeat the message. The only drawback I have seen so far is that the messages take a little longer to pass through, and there may be one or two more interruptions in the music than expected but? it works. For those who are also struggling with the stream examples I posted before, this workaround may not work. It seems that these users have also some networking issue.

[quote=“Kryckmeister, post:104, topic:188206”]Did all that…I assume Client ID is the Customer ID and Account Key is the Microsoft Client Secret.

Reloaded and rebooted, and it’s quiet.[/quote]

I got stuck on this too. It’s not the same. I found in the instructions on how you have to set this up.
From the Microsoft Azure page you need to click on Developers on the left (https://datamarket.azure.com/developer/applications)

From there you can create the Client ID. The account Key will be filled in. You can just put in https://microsoft.com for the redirect URI

Thanks. Now it at least works a bit.

HI there, finally got a sonos play for xmas. Downloaded and installed upnp plugin and sonos plugin and followed instructions. I can control sonos (play, pause, skip, mute, volume, etc) but tts seems to not work.

The tts is set to Google english. In the Web page tts ui tab, there is only a say button but no area to enter text. I tried the lua test code in develop apps using my device id and also doesn’t work. It pauses music, is silent for a few second, then skips to next song. It apears the tts isn’t processing.

I attempted to use the Microsoft alternative instead, but azure marketplace is being discontinued on 12/31/2016 and existing accounts will be discontinued in april, so doesn’t appear to be worth the effort.

Last, I tried downloading the latest trunk 230 from the repo and uploading the fIles manually but that didn’t seem to make a difference either.

Any ideas?

I have given up on the entire cloud effort for TTS. Google changes their APIs way too frequently causing disruptions and Microsoft’s is just annoying to create & maintain. I find the cloud unacceptable since I use the TTS over sonos to alert my family on security issues like the garage door opens or someone left a door unlocked.

So, I wrote my own service to run on an a Windows IIS server on my network. It is written in .net and works well enough for me. I have it running on an old WinServer 2008R2 VM. Of course the IIS box has to have have Microsoft’s TTS engine installed. I added additional high quality voices (ATT Natural Voices; http://rentanadviser.com/en/affiliates/att_natural_voices/att_natural_voices.aspx) so that it sounds less computer generated.

I configure the sonos plugin to use the OSX TTS server setting and point it to my IIS box. It isn’t all that fancy but does the job.

PM me if you are interested.

Interesting. Would that work on Windows HomeServer 2011 as well? The TTS part is installed on it as it’s basically a very neutered version of Server 2008.

I’m definitely interested as I to would prefer to keep it all local.

Responsive http://responsivevoice.org/ it works well.

There is an updated version of the Sonos plugin that has support for responsivevoice built in floating around on these forums. I believe it is in the Sonos MS plugin thread.

Hi, bougth my first Sonos speaker today and I can control it from Vera but the tts only worked for 10 minutes. Now nothing happens but I can still control it. What can I do, I want my Vera to speak to me ???

How do you use it?

Forum Search is your friend: http://forum.micasaverde.com/index.php/topic,33223.msg312329.html#msg312329

[quote=“kazenami, post:22, topic:188206”]Thanks to this, I’ve installed MaryTTS (http://mary.dfki.de/) on my Raspberry PI (that was only running the Hue Server for the Amazon ECHO Workaround). This is for those that don’t have a 24/7 Mac server running. Hopefully it helps :smiley:

Here’s what I did (Full Steps).

  1. SSH into Raspberry PI

$ cd Downloads
$ wget https://github.com/marytts/marytts/releases/download/v5.1/marytts-5.1.zip
Unzip the application to the /usr/bin directory

$ sudo unzip marytts-5.1.zip -d /opt
At this point it will not run unless the you have already installed Java 1.7 you can determine the current version of Java by executing:

$ java -version
Install the required version of Java (also add openjdk-7-jdk if you intend to do any java development):

$ sudo apt-get install openjdk-7-jre
After installing the new java runtime (jre) it will still not be the default. To set the new jre to your default use:

$ sudo update-alternatives --config java

Selection Path Priority Status

  • 0 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 auto mode
    1 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 manual mode
    2 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 1051 manual mode

Press enter to keep the current choice[*], or type selection number: 2
Having selected option 2 the java version should return something similar to:

$ java -version
java version “1.7.0_65”
OpenJDK Runtime Environment (IcedTea 2.5.1) (7u65-2.5.1-5~deb7u1)
OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode)
The runtime package delivers the scripts necessary to run the MaryTTS Server, which can be used via a browser of the client to synthesize speech. The server can be launched with:

$ /opt/marytts-5.1/bin/marytts-server.sh
This can then be used either through a browser or via the MaryTTS Client. The browser address will be:

http://(RaspPI_IP):59125
The MaryTTS Client, which is a Java GUI can be launched with:

$ /opt/marytts-5.1/bin/marytts-client.server
Launch the Server

  1. Edit L_SonosTTS.LUA (Download Apps → Develop Apps → Luup files)
  • edit the SAY_EXECUTE variable, replace the 5th line with the Google URL to:

http://(RaspPI_IP):59125/process?INPUT_TYPE=TEXT&OUTPUT_TYPE=AUDIO&FAKE=%s&INPUT_TEXT=%s&LOCALE=en_US&AUDIO=WAVE_FILE

  • Please replace the (RaspPI_IP) with your device IP and make sure to put them inside the quotes.
  • Upload, replace, restart LUUP.
  1. Test and enjoy! Congrats, you’re done. No more relying on other TTS servers.[/quote]
    Hi, I don’t have sonos, is there any way I can connect Bluetooth speaker to Raspberry PI for announcement

thanks in advance

Thanks,
Dip

The commands that the Sonos plugin sends out to communicate with the speaker are Sonos specific and as such won’t work with eg a Bluetooth speaker. You might be able to hack 'maryTTS (since it’s http) to output to the locally attached speaker by sending it the correct HTTP command string directly without going through the plugin.