Ok, i will do a status check and try to find the issue
-
Thanks! As you can see in the last screenshots pimatic reports both “speakers beneden” and “woonkamer speakers” are playing wich is impossible since woonkamer speakers are part of the “speakers beneden” speakergroup.
-
Seems logical but when I say “hey Google luister naar 3fm op speakers beneden” only the “speakers beneden” device reports a status update that it is playing. In this case (with this screenshots) I’ve done the following speech commands:
1 hey Google luister naar 3fm op speakers beneden.
(Status in pimatic changed from the previous pause to playing and program name)2 hey Google stop.
(Stream stops, Google home app says nothing is playing, pimatic still says speakers beneden are playing. Closed and force stopped the browser to make sure no caching occured but after logging in on pimatic status was still “playing”)3 hey Google luister naar 3fm op woonkamer speakers.
(Status of “woonkamer speakers” got updated to playing with program name, status of “speakers beneden” remains unchanged.For reference:
“speakers beneden” is a speakergroup that contains “woonkamer speakers”, “Google hub keuken” and “Google mini badkamer”“Woonkamer speakers” is a stereo speaker pair of 2 Google home speakers (so not a regular speaker group, when assigned as stereo pair the right speaker (in my case) becomes a slave speaker and in the Google home app the stereo pair appear as a single device with balance control in the settings)
If you need more details you have my number
-
Thank for the info. Your config is bigger than what i can test.
I tested a single google home with text and mp3, and the status follows what happens.
So the issues must be the grouping and pairing of speakers and there states.
I need some time to find out how to test and fix the possible scenarios. -
Yeah, pimatic is in control of a lot hahahaha
-
I was wondering: is the state of the google speakers available in the rules? Because if it is I could make e set of rules depending on what speaker or group is playing like
Rule 1 “if state of speakers beneden is “playing” and doorbell is pressed then play test.mp3 on speakers beneden”
Rule 2 “if state of woonkamer speakers is “playing” and doorbell is pressed then play test.mp3 on woonkamer speakers and play test.mp3 on google hub keuken and play test.mp3 on Google mini badkamer”
Rule 3 “if state of speakers beneden is “idle” and if state of woonkamer speakers is “idle” and doorbell is pressed then play test.mp3 on speakers beneden”
Don’t know if these rules would interfere with each other though…
-
Ah ok, so there’s something to experiment with.
Did a few tests tonight and noticed that indeed the issue is that the state of a group device doesn’t go back to idle at all. Even when playing a radio stream without interference of the doorbell, when a stream that is playing on a speakergroup is stopped (hey Google stop) the state of the group device says it’s still playing. Google home says nothing is playing. -
Hey Bert,
one thing I like to get working is to consider a “.” or “comma” in the tts function.Ich have a function which announce open doors/windows: “Please check the window in the bath, the living room, the kitchen and the door to the garage.”
Currently the sentence will be read like without comma. Sounds like strange.
In my python (modul pychromecast) script I used in the past for TTS comma and dots were considered. Could it be that you are filtering that stuff?
-
Hello, i’m not filtering the text. Can you see in the debug log the text that being used?
The text goes directly to the node-tts function. I assume you have the right language set.
And what happens when you put the same sentence in a google app and let it talk? -
I have checked this at first. Commas and dots can be found in the debug output. When I use the old google tts link the characters are considered.
Do you know this?
https://cloud.google.com/text-to-speech?hl=en4 million chars are for free each month. There are much more voices and posibilities in this API. Would you give it a try as an option?
-
I used your sentence with the comma’s and it sounds understandable.
The node-gtts lib uses the same ‘https://translate.google.com/translate_tts…’ api.
So there should be no differences.The new google cloud services are interesting but i didn’t look into it yet because of the extra info paying commitment you need to provide (even when its free for basic usage).
I’m not sure if there interest from many users for this. -
The voice quality of the cloud tts is very nice so I added it.
In version 0.0.45 you can select in the plugin config the google-translate or the google-cloud tts.
When you choose the cloud tts your need to put the credentials.json file in the pimatic directory and put the full filename (no dir path) into the plugin config.
Its also possible to use ssml in the text string. Use single quotes for ssml strings like <break time=‘400ms’/>Let me know how this sounds.
-
@bertreb said in New plugin pimatic-sounds:
The voice quality of the cloud tts is very nice so I added it.
This is the major advantage of the new service. I give it a try and will report.
-
Your update works for me, thank you for that! Sounds much better now. First I had problems, but I can’t figure out where it was. After some time and some restarts (due to other stuff I did) it was working suddenly.
Please make the different “Voice name” available in the plugin config and if you like as well the speed option and just for fun the pitch option.
-
I can add the pitch and speed. What is your idea on the voice names?
You mean the format <country-code>-[standard|WaveNet]-[A…?] , for example basic UK english voice => en-UK-Standard-A ? -
Yes, I mean the en-UK-Standard-A, en-UK-Standard-B, en-UK-Standard-C…