Neues Modul: Text2Speech

Begonnen von Tobias, 07 Januar 2014, 12:57:23

Vorheriges Thema - Nächstes Thema

Seli

Bei mir nach Update ebenfalls keine Soundausgabe mehr. Nach Restore läuft es wieder.
Raspberry Pi 3, FHEM 5.8
CUL868 V3 (FS20/IT): FHT80TF|PIRI|PIRI-2|TFK|S4A-2|ST|SU|S8|HMS 100 WD|IT-1500|GRR-3500
HomeMatic HMLAN_UART: HM-CC-RT-DN|HM-SEN-MDIR-O|HM-SEC-SC-2|HM-TC-IT-WM-W-EU|HM-LC-SW4-PCB 4|HM-WDS-OTH|HM-OU-LED16|HM-RC-4-3
JeeLink v3c, Rademacher duoFern, MiLight Bridge v4, RGB

Tobias

gerade zurück auf die alte API Definition gesetzt. Wer unbedingt die neue Definition braucht muss eben mit einem Wrapperscript arbeiten. Falls später wirklich notwendig baue ich dann stattdessen dafür einen Schalter ein.
Bitte morgen per UPDATE nochmal prüfen, oder heute per manuellen download aus dem SVN
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

Ellert

98_Text2Speech.pm 18937 2019-03-17 09:09:41Z Tobias.Faust

Funktioniert bei mir.

Ist nur die mpv Änderung raus oder auch die anderen Änderungen?

Audi_Coupe_S

Hallo,
seit einem Update gestern funktioniert bei mir das Text2Speech auch nicht mehr.

Unknown option on the command line: --audio-device=hw0.0
Error parsing option on the command line: --audio-device=hw0.0

Ein neuerlicher Updateversuch gab "nothing to do".

Was kann ich tun, das es wieder funktioniert?

Ellert

Zitat von: Audi_Coupe_S am 18 März 2019, 10:19:09
Hallo,
seit einem Update gestern funktioniert bei mir das Text2Speech auch nicht mehr.

Unknown option on the command line: --audio-device=hw0.0
Error parsing option on the command line: --audio-device=hw0.0

Ein neuerlicher Updateversuch gab "nothing to do".

Was kann ich tun, das es wieder funktioniert?
Schau Dir den Befehl restore und das globale Attribut exclude_from_update in der Befehlsreferenz an, damit sollte das Problem zulösen sein.

skydns

#920
Hallo Leute,
Frauchen sagt: Natürlich steigt die Technik immer aus wenn du nicht da bist...

Mir ist der zeitliche Zusammenhang noch nicht klar, jedoch vermute ich auch das es am letzten Update liegt. Mein Text2Speech funktioniert jedenfalls nur noch zum Teil.
Der Text den ich übertrage z.B. Die Raumtemperatur wurde auf 20 Grad eingestellt.
wird umgewandelt und wiedergegeben, jedoch ist in der mp3 irgendein Zahlencode zu hören. Per Fernzugriff konnte ich das Modul erstmal nur deaktivieren.
Gibt es inzwischen schon eine Lösung oder ist das Problem bei jedem anders?
Etwas genauer schauen kann ich erst wieder ab morgen Abend.
Ich werd gleich noch eine mp3 als Beispiel hier anhängen.

Zu hören sollte eigentlich eine Temperaturansage wie oben beschrieben.
Gruß Marco

Logfile:
Zitat
2019.03.21 21:08:39 3: CUL_HM set WZ_Heizung_Clima desired-temp 18.0 2019.03.21 21:08:40 4: MyTTS: Angabe einer direkten MP3-Datei gefunden: doorbell_15.mp3 => FileTpl_#0_0 2019.03.21 21:08:40 4: MyTTS: Auflistung der Textbausteine nach Aufbereitung: 2019.03.21 21:08:40 4: MyTTS: 0 => mp3/doorbell_15.mp3 2019.03.21 21:08:40 4: MyTTS: Auflistung der Textbausteine nach Aufbereitung: 2019.03.21 21:08:40 4: MyTTS: 0 => Die Raumtemperatur wurde auf 18 Grad eingestellt 2019.03.21 21:08:40 3: Die Raumtemperatur wurde auf 18 Grad eingestellt 2019.03.21 21:08:40 4: MyTTS: Verwende TTS Spracheinstellung: Deutsch 2019.03.21 21:08:40 4: MyTTS: mp3/doorbell_15.mp3 als direkte MP3 Datei erkannt! 2019.03.21 21:08:40 4: MyTTS: Bearbeite jetzt den Text: mp3/doorbell_15.mp3 2019.03.21 21:08:40 4: MyTTS: mp3/doorbell_15.mp3 gefunden, kein Download 2019.03.21 21:08:40 4: MyTTS: mp3/doorbell_15.mp3 hat eine Länge von 4 Sekunden. 2019.03.21 21:08:40 4: MyTTS:/usr/bin/mplayer -ao alsa:device=hw=0.0 -really-quiet -nolirc -noconsolecontrols -softvol -softvol-max 200 -volume 60 mp3/doorbell_15.mp3 >/dev/null 2019.03.21 21:08:45 4: MyTTS: Es wurden 1 Teile ausgegeben und der Befehl ist abgearbeitet. 2019.03.21 21:08:45 4: MyTTS: Verwende TTS Spracheinstellung: Deutsch 2019.03.21 21:08:45 4: MyTTS: Textbaustein ist keine direkte MP3 Datei, ermittle MD5 CacheNamen: d38876340551dbf3b16149f2a0b09b3e.mp3 2019.03.21 21:08:45 4: MyTTS: Bearbeite jetzt den Text: Die Raumtemperatur wurde auf 18 Grad eingestellt 2019.03.21 21:08:45 4: MyTTS: Verwende Google OnlineResource zum Download 2019.03.21 21:08:45 4: MyTTS: Hole URL: http://translate.google.com/translate_tts?tl=de&client=tw-ob&q=ARRAY%280x53658e0%29 2019.03.21 21:08:46 4: MyTTS: Schreibe mp3 in die Datei cache/d38876340551dbf3b16149f2a0b09b3e.mp3 mit 26784 Bytes 2019.03.21 21:08:46 4: MyTTS: cache/d38876340551dbf3b16149f2a0b09b3e.mp3 hat eine Länge von 7 Sekunden. 2019.03.21 21:08:46 4: MyTTS:/usr/bin/mplayer -ao alsa:device=hw=0.0 -really-quiet -nolirc -noconsolecontrols -softvol -softvol-max 200 -volume 60 cache/d38876340551dbf3b16149f2a0b09b3e.mp3 >/dev/null
NUC - CUL868Mhz V3 culfwV1.67 - nanoCUL 433MHz (nanoCUL) V 1.26.08 a-culfw - Zigbee - Ubuntu 22.04 - FHEM 6.1 zum Schalten von Licht+Steckdosen (Sonoff,Shelly,MQTT,433Mhz) und Überwachung von diversen Homematic/Homematic IP Kontakten/Sensoren mit Anwesenheitserkennung (G-TAGS)

Schlimbo

Hallo zusammen,
habe den gleichen Fehler wie skydns, seit dem letzten Update werden nur noch seltsame Zahlenfolgen ausgegeben.
Hier ein Log dazu:
2019.03.21 23:06:48.147 4: MyTTS: Auflistung der Textbausteine nach Aufbereitung:
2019.03.21 23:06:48.148 4: MyTTS: 0 => Test
2019.03.21 23:06:48.153 3: telnetForBlockingFn_1553206008: port 41449 opened
2019.03.21 23:06:48.186 4: MyTTS: Verwende TTS Spracheinstellung: Deutsch
2019.03.21 23:06:48.188 4: MyTTS: Textbaustein ist keine direkte MP3 Datei, ermittle MD5 CacheNamen: 15f3ee2c2bd4e05acae32c787e103a17.mp3
2019.03.21 23:06:48.189 4: MyTTS: Bearbeite jetzt den Text: Test
2019.03.21 23:06:48.191 4: MyTTS: Verwende Google OnlineResource zum Download
2019.03.21 23:06:48.192 4: MyTTS: Hole URL: http://translate.google.com/translate_tts?tl=de&client=tw-ob&q=ARRAY%280x19aab40%29
2019.03.21 23:06:48.356 4: MyTTS: Schreibe mp3 in die Datei /tmp/15f3ee2c2bd4e05acae32c787e103a17.mp3 mit 14688 Bytes
2019.03.21 23:06:48.360 4: MyTTS: /tmp/15f3ee2c2bd4e05acae32c787e103a17.mp3 hat eine Länge von 4 Sekunden.
2019.03.21 23:06:48.361 4: MyTTS:/usr/bin/mplayer -ao alsa:device=hw=1.0  -nolirc -noconsolecontrols /tmp/15f3ee2c2bd4e05acae32c787e103a17.mp3

RomanticBoy83

#922
So kann ich doch etwas lesen. Besten dank für das ordentliche Log.
Ich hab' jetzt zwar keine Lösung für dich, aber eine Vermutung.

Das Log schaut schon absolut richtig aus. Es wird nur zu Google die Referenz des Satzes "Test" gesendet. Das ist natürlich ein Array mit einer Adresse.

Ich habe bereits bemerkt, dass ich im Patch die Leute vergessen hatte, die nicht den mp3wrap aktiviert haben. Vermutlich ist dort irgendwo noch ein Fehler drin.

Du kannst versuchen ob es was bringt wenn du mp3wrap aktivierst. Ich schaue mir die aktuelle Version mit dem nun eingefügten Patch am Wochenende mal an.

Meine schnelle Vermutung für ganz Eilige:
Zeile 894 sollte nicht das Array übergeben sondern einen string. Im Log darüber sieht man die join funktion, welche das erledigt.

skydns

#923
Als kleiner Nachtrag noch zwei Bilder in dem man auch die Logeinträge besser lesen kann. mp3Wrap ist bereits aktiv.
Besser kriege ich es gerade mit dem Handy nicht hin.
Resource steht natürlich auf google, ich hatte espeak nur mal als Alternative probiert.
Gruß Marco
NUC - CUL868Mhz V3 culfwV1.67 - nanoCUL 433MHz (nanoCUL) V 1.26.08 a-culfw - Zigbee - Ubuntu 22.04 - FHEM 6.1 zum Schalten von Licht+Steckdosen (Sonoff,Shelly,MQTT,433Mhz) und Überwachung von diversen Homematic/Homematic IP Kontakten/Sensoren mit Anwesenheitserkennung (G-TAGS)

RomanticBoy83

Hey Leute - Ich habe mir das mal angesehen und den Fehler mit hoher Wahrscheinlichkeit gefunden!

Meine Vermutung war richtig und ich stelle gleich noch eine hinterher: Ihr habt beide das
attr TTS_SpeakAsFastAsPossible != 0
Im Screenshot kann ich das erkennen, dass es bei skydns so ist.

Da ich das nicht gesetzt habe und auch nicht verstehe was es bringen soll fiel mir das nicht weiter auf.

Problemanalyse:
In Zeile 840 wird normalerweise der Dowload gestartet. Bei euch jedoch aufgrund des Attributes nicht. Euer Download geschieht in der Zeile 895. Dort bin ich bisher nie hingekommen und habe somit den Fehler zu verantworten.

Lösung:
--- Text2Speech_Download($hash, $file, $hash->{helper}{Text2Speech}->[0]);
+++ Text2Speech_Download($hash, $file, join(" ",@{$hash->{helper}{Text2Speech}->[0]}));


Weiterer Lösungsvorschlag:
Wir könnten das Attribut auch demnächst entfernen wenn es denn wirklich keinen weiteren Sinn hat. Damit würde der gesamte Absatz dort unten ebenfalls entfallen. Ob das aber wirklich so ginge müsste geprüft werden oder von Tobias mal erörtet werden was der Sinn dahinter war.

Ich haffe ihr könnt damit ersteinmal leben und bekommt die Änderung selber durchgeführt: 1)Ändern, 2)Speichern, 3)Neuladen, 4)Spaßhaben.

Schlimbo

Deine Vermutung stimmt, auch bei mir ist das Attribute TTS_SpeakAsFastAsPossible gesetzt.
Vielen dank, mit der Anpassung funktioniert es jetzt wieder.

skydns

Ich habe auch zu danken, den Fehler hätte ich nicht gefunden. Es funktioniert nun auch bei mir.
Danke
NUC - CUL868Mhz V3 culfwV1.67 - nanoCUL 433MHz (nanoCUL) V 1.26.08 a-culfw - Zigbee - Ubuntu 22.04 - FHEM 6.1 zum Schalten von Licht+Steckdosen (Sonoff,Shelly,MQTT,433Mhz) und Überwachung von diversen Homematic/Homematic IP Kontakten/Sensoren mit Anwesenheitserkennung (G-TAGS)

Tobias

Das Attribut hat den Sinn einen Satz so schnell als möglich raus zu hauen.
Also, entweder wird der ganze übergebene Text in den Einzelteilen heruntergeladen und per mp3wrap wieder zusammengesetzt ( damit bekommt man eine flüssigen Test gesprochen) oder sobald der erste Teil des Textes als mp3 vorliegt wir dieser ausgegeben. Damit ist unter Umständen eine holperige Textausgabe gegeben, aber eben sehr schnell.

Könntest du den Teil dazu noch anpassen, testen und als Patch Posten?

Gesendet von iPhone mit Tapatalk
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

RomanticBoy83

Ist nur der eine join welcher in Zeile 895 gefehlt hatte.

Tobias

bugfix ist jetzt im Repo. Jetzt aber sollte  hoffentlich alles funktionieren.....
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter