NEWS
SayIT probleme mit der Wiedergabe
-
@meister-mopper Ja, dann öffnet sich darunter eine neue Klammer. Und crunchip sagte, dass der darunterliegende Befehl erst dann abgearbeitet wird.
Ich habe es jetzt einfach ausprobiert. Aber das Ergebnis bleibt das Selbe.
Falls es mal jemand selbst testen möchte. Blöcke zum importieren. :
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable type="timeout" id="timeout">timeout</variable> <variable type="timeout" id="timeout2">timeout2</variable> </variables> <block type="schedule" id="m85vfeI)N2iCBHfr]nXe" x="-478" y="92"> <field name="SCHEDULE">*/40 * * * * *</field> <statement name="STATEMENT"> <block type="control" id="I;b#^_2Mx#Mqng^Lg1S,"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">sayit.2.tts.clearQueue</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="|aHwh6N^n*1(cu4}0=nT"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="h:Ae,B[!w(`}Hc0X+bvm"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">sayit.2.tts.text</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="Fp)A5G8wF=x4+Pj,}@s1"> <field name="TEXT">Test 1</field> </block> </value> <next> <block type="timeouts_settimeout" id="2tHEm}_cp{#CZtd^U|MY"> <field name="NAME">timeout</field> <field name="DELAY">15</field> <field name="UNIT">sec</field> <statement name="STATEMENT"> <block type="control" id="l=fy[=}J1CIGFU?Mc9pY"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">sayit.2.tts.clearQueue</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="k.,2+!P_+jJY(2x_IJ:L"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="exec" id="@(hzTiZ/!+!xIRAG{a(X"> <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation> <field name="WITH_STATEMENT">TRUE</field> <field name="LOG"></field> <value name="COMMAND"> <shadow type="text" id="(_Uy%CmMS,-g?KLl:N9!"> <field name="TEXT">rm /opt/iobroker/iobroker-data/files/sayit.2/tts.mp3</field> </shadow> </value> <next> <block type="control" id=".uME[o,Wa~f@wYTzULaP"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">sayit.2.tts.text</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="(cfid/`$|Ezh;cMXE[b;"> <field name="TEXT">Test 2</field> </block> </value> </block> </next> </block> </next> </block> </statement> <next> <block type="timeouts_settimeout" id="=2wo`5ckRaF68X3rPT.."> <field name="NAME">timeout2</field> <field name="DELAY">30</field> <field name="UNIT">sec</field> <statement name="STATEMENT"> <block type="exec" id=":pe_MvB:GDl]jn`SiD3C"> <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation> <field name="WITH_STATEMENT">TRUE</field> <field name="LOG"></field> <value name="COMMAND"> <shadow type="text" id="]yGB_#_0@W:F-,!Zin8y"> <field name="TEXT">rm /opt/iobroker/iobroker-data/files/sayit.2/tts.mp3</field> </shadow> </value> <next> <block type="control" id="tj]tan-!Qn#c2RR~Q8:%"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">sayit.2.tts.text</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="oqzj.4JTfk]V6(M1}vGQ"> <field name="TEXT">Test 3</field> </block> </value> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </xml>oder JS
var timeout, timeout2; schedule("*/40 * * * * *", async () => { setState('sayit.2.tts.clearQueue' /* Clear queued texts */, true); setState('sayit.2.tts.text' /* Text to speech */, 'Test 1'); timeout = setTimeout(async () => { timeout = null; setState('sayit.2.tts.clearQueue' /* Clear queued texts */, true); exec('rm /opt/iobroker/iobroker-data/files/sayit.2/tts.mp3'); setState('sayit.2.tts.text' /* Text to speech */, 'Test 2'); }, 15000); timeout2 = setTimeout(async () => { timeout2 = null; exec('rm /opt/iobroker/iobroker-data/files/sayit.2/tts.mp3'); setState('sayit.2.tts.text' /* Text to speech */, 'Test 3'); }, 30000); }); -
@maxpd sagte in SayIT probleme mit der Wiedergabe:
Blöcke zum importieren
bitte auch immer einen Screenshot zeigen ;)
-
@maxpd dann liegt die zwischengespeicherte Datei wohl trotzdem noch irgendwo im Nirwana
-
@crunchip Aber wie finde ich die? Den Pfad/die Datei habe ich aus der chromecast.0.player.announcement und kann sie auch separat im Browser öffnen. Die Ansage ist korrekt. Ich sehe aber keine weitere die irgendwo gecacht ist oder tatsächlich verwendet wird.
-
@crunchip Aber wie finde ich die? Den Pfad/die Datei habe ich aus der chromecast.0.player.announcement und kann sie auch separat im Browser öffnen. Die Ansage ist korrekt. Ich sehe aber keine weitere die irgendwo gecacht ist oder tatsächlich verwendet wird.
@maxpd da kann ich dir leider nicht behilflich sein, ggf ein issue beim Adapter öffnen, falls nicht schon vorhanden
-
@maxpd da kann ich dir leider nicht behilflich sein, ggf ein issue beim Adapter öffnen, falls nicht schon vorhanden
@crunchip
https://forum.iobroker.net/topic/66410/gelöst-sayit-mp3-erzeugen-geht-nicht-mehr/76Hier hattest du mir geschrieben, wo die Datei zu finden ist.
Und dies passt weiterhin.Dort liegt immer die aktuelle mp3.
-
@crunchip
https://forum.iobroker.net/topic/66410/gelöst-sayit-mp3-erzeugen-geht-nicht-mehr/76Hier hattest du mir geschrieben, wo die Datei zu finden ist.
Und dies passt weiterhin.Dort liegt immer die aktuelle mp3.
-
Das Löschen der Datenpunkte und Neustarten des Adapters löst zudem folgendes Problem nicht, welches am meisten nervt.
Doppelte Sprachausgabe, bzw. Abspielen eines alten Files, obwohl auf dem iobroker schon eine neue MP3 liegt. Mein Test hierzu, der auch Queues löscht und alte Files aktiv löscht. Auch größere Abstände von 30 Sekunden helfen nicht. Es wird immer "Test 1" ausgegeben. Debug Ausgaben geben Test 2 und Test 3 währenddessen aus.

Was kann ich noch versuchen?
Leider kann Sayit keinen Pause Befehl, sodass wenn ich alles in eine Sprachausgabe packe, diese halt runterrasselt ohne kurze Pausen einzulegen. Bei längeren Ansagen am Morgen für die Tagesplanung unpraktisch.@maxpd sagte in SayIT probleme mit der Wiedergabe:
Leider kann Sayit keinen Pause Befehl
-
@maxpd sagte in SayIT probleme mit der Wiedergabe:
Leider kann Sayit keinen Pause Befehl
-
@crunchip ich hatte es damals nicht hinbekommen und auch hier irgendwo gelesen, dass das eigentlich nicht geht. evtl. hat sich in der Zwischenzeit was getan.
Aber hast du es mit Blockly mal hinbekommen? Bei mir spricht er das 1:1 aus. Evtl. brauch es noch eine Art Konvertierung?

-
@crunchip ich hatte es damals nicht hinbekommen und auch hier irgendwo gelesen, dass das eigentlich nicht geht. evtl. hat sich in der Zwischenzeit was getan.
Aber hast du es mit Blockly mal hinbekommen? Bei mir spricht er das 1:1 aus. Evtl. brauch es noch eine Art Konvertierung?

@maxpd hast du in sayit aws polly aktiviert/eingerichtet?
-
@crunchip Jap und das würde auch gut passen, da diese Formatierungen nur damit funktionieren.
-
@maxpd muss ich mal zu hause testen, hab das selbst nicht in Verwendung
-
@crunchip Funktionierte die letzten Tage super!! Danke dafür.
Habt ihr auch eine Lösung für das Problem der Lautstärkenänderung bei einer Gruppenausgabe? Egal ob ich die Lautstärke bei Sayit mitgebe oder nicht. Manchmal wechselt sie während der Ausgabe, manchmal nicht. Kann man vllt das Volume Attribut des Chromecast für während der Ausgabe sperren und dann wieder freigeben? -
@maxpd sagte in SayIT probleme mit der Wiedergabe:
Habt ihr auch eine Lösung für das Problem der Lautstärkenänderung bei einer Gruppenausgabe?
da kann ich dir nicht weiterhelfen


