NEWS
SayIT probleme mit der Wiedergabe
-
@maxpd sagte in SayIT probleme mit der Wiedergabe:
Du meinst ich soll Text to Speech in die neue Klammer des exec Befehls einsetzen?
Ich glaube eher, hier soll der Haken gesetzt werden:
-
@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
-
-
-
@djmarc75 Ja, das hatte ich auch gemacht. Aber ändert nichts am Endergebnis.
-
@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.
-
@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.
-
-
@maxpd sagte in SayIT probleme mit der Wiedergabe:
Leider kann Sayit keinen Pause Befehl
-
gelöscht
-
@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.
-
-
@crunchip weißt du, wie man dies in einem blockly unterbringt?
-
@maxpd muss ich mal zu hause testen, hab das selbst nicht in Verwendung
-
@crunchip So scheint es zu funktionieren:
Ich versuche es später mit meiner komplexen Morgenansprache, mit Variablen und allem drum und dran.