HM-OU-CFM-PL: MP3 Gong: Ton erst abspielen, wenn ein anderer Ton fertig ist/LED

Begonnen von coyote, 24 August 2015, 11:31:08

Vorheriges Thema - Nächstes Thema

coyote

Hallo zusammen,

vor ein paar Tagen habe ich den MP3 Gong der Homematic eingebunden.
Soweit funktioniert alles, nur gibt es jetzt doch einige Fragen.

1. Wenn eine MP3 Ausgabe gestartet wird (von mehreren Dateien) und direkt danach startet eine Weitere,
dann wird die erste Ausgabe unterbrochen und die zweite beginnt.

z.B.:

fhem("set MP3Gong1_Mp3 playTone 001,002,003");
fhem("set MP3Gong1_Mp3 playTone 004,005,006");


Kann man den Gong so einstellen, dass immer die komplette Tonausgabe erfolgt, ohne Unterbrechnung?
Gibt es eine Abfrage mit der festgestellt werden kann, dass der Gong gerade beschäftigt ist und
die zweite Ausgabe in einer Schleife wartet, bis die erste Tonausgabe fertig ist?

2. Ich wollte mir dann die Ausgabe zusammensetzten:


Hausstatus.unten {
my $ton = '088,087,030';
if ( Value("BriefkastenStatus") eq "voll"){
   $ton = $ton.',002,045';
}
if ( Value("Fenster.Bad.unten") eq "open"){
   $ton = $ton.',003,020,040';
}
if ( Value("Tur.Veranda") eq "open"){
   $ton = $ton.',004,010,040'; 
}
if ( Value("Fenster.Veranda.A") eq "open"){
   $ton = $ton.',003,010,040'; 
}
if ( (Value("Fenster.Schlaf.A.unten") eq "open") || (Value("Fenster.Schlaf.B.unten") eq "open") ){
   $ton = $ton.',003,018,040'; 
}
 
$ton = $ton.',088,087,030,064'; 
fhem("set MP3Gong1_Mp3 playTone $ton");
}


Doch die Parameterlänge der Tonausgabe ist wohl auf 12 beschränkt und wenn alle Bedingungen wahr sind,
sind es mehr als 12 Dateien, die abgespielt werden sollen.
Wie könnte man dieses Problem umgehen?

3. Gibt es eine Möglichkeit, die LED am Gong dauerhaft auf grün, rot oder gelb zu schalten?

Viele Dank im Voraus,

Coyote

martinp876


chipmunk

Ich habe den MP3-Gong zwar nicht in Verwendung aber doch folgende Frage:
Woher kommt die Einschränkung auf 12?
In den Anleitungen lese ich immer von 255 unterschiedlich möglichen Sounddateien.
Ich habe da auch keine Anzahl an maximal zulässigen Peers gefunden.

Danke
Chipmunk
RasPi3, HM, HUE, div 433MHz Baumarktdosen über Sende- und Empfangsmodule von C*, Ediplug

coyote

Du kannst 254 oder 255 MP3 Dateien auf einer SD Karte speichern, diese Dateien kannst du auch alle einzeln abspielen.
Wenn du jedoch mehrere Dateien auf einmal abspielen möchtest, so zu sagen in einer Playlist, dann funktioniert es nur mit max 12 Dateien. Ich weiss nicht, ob das Limit an dem Fhem Modul liegt oder an dem Gerät selber. Ich habe auch keine CCU, somit kann ich die Funktion auch nicht mit der Zentrale testen.

Ich hoffe, es hilft dir ein bisschen.
Coyote

coyote

Ich habe das Problem mit der Unterbrechung über Umwege gelöst.
Ein Langzeittest läuft gerade.

Zuerst habe ich die mp3s, die auf der SD Karte des Gongs vorhanden sind, auf den Webserver vom Raspberry kopiert.
Dann habe ich mittels php die Länge der mp3s ausgelesen und in eine SQL DB gespeichert.

Die Playlist, die abgespielt werden soll, wird ebenfalls in der DB gespeichert und zusätzlich die Gesamtspiellänge der Mp3s.

Aufruf in fhem:
GetHttpFile("192.xxx.xxx.xxx:80","/mp3gong/demos/mp3gong.php?play=095,100&device=2"); 

Device = 2, weil ich 2 Mp3 Gongs habe.

Ein weiteres C Programm schaut nun jede Sekunde in die DB, ob neue MP3 Ausgaben vorhanden sind.
Wenn ja, wird im C Programm über curl die URL http://192.xxx.xxx.xxx:8083/fhem?cmd=set%20MP3Gong2_Mp3%20playTone%20095,100 aufgerufen und anschließend erfolgt ein sleep, je nach dem wie lang die Mp3s abgespielt werden. Anschließend wird, sofern ein weiterer Eintrag in der DB vorhanden ist, die nächsten Dateien abgespielt.
Somit habe ich bisher keine Unterbrechungen mehr.

Auch kann ich nun mehr Parameter gleichzeitig übergeben, denn das php Programm splittet sie auf mehrere DB Einträge auf und spielt sie dennoch nacheinander ab.

Die Auslastung auf dem Raspberry ist nicht erwähnenswert.

Grüße, Coyote