Ich habe noch etwas rumprobiert mit den Werten von PROBESIZE und ANALYZEDURATION aber eine wesentliche Verkürzung der Umschaltzeiten konnte ich nicht erreichen. Auch nach dem ich beide Werte ganz aus dem ffmpeg-Befehl gelöscht habe, war keine große Veränderung erkennbar.
Bei meinen Tests mit ffprobe brachte es was.
Es kann aber sein, dass die Werte bei festem Stream-Mapping irrelevant sind.
Ich habe die ffmpeg-commandline noch etwas angepasst und das Stream-Mapping aus der ///pipe ... von Telerising übernommen, wie es an TvHeadend übergeben wird.
Einen Unterschied sollte es eigentlich nicht machen.
Deren -copy Optionen pro Stream sollten mit einem globalen -copy für alles identisch sein (letzteres ist aber übersichtlicher ;-)).
Die Umschaltzeiten zwischen den Streams sind bei mir ca. 3 ... 6 Sekunden bis Bild+Ton da sind, meistens sind es ca. 4 Sekunden.
Das ist aber schon mal schneller als alles, was ich bei meinen ffprobe Tests hin bekommen habe.
Unter 5,5 Sekunden war da nie möglich.
Aufgefallen ist mir noch, dass meist zuerst das Bild nach ca. 2 Sek. da ist und dann dauert es noch 1 ... 3 Sek. ehe dann auch der Ton richtig da ist.
Das kann auch irgendwie mit der Synchronisierung der Streams zusammen hängen.
Es ist ja nicht gesagt, dass die ersten Pakete schon zusammen passende Audio und Video Daten enthalten.
carel hatte noch diese Optionen in seinem Skript:
FLUSH_PACKETS="-flush_packets -1" # 1: flush immediately, reduce latency, 0: increases throughput, -1: automatic
DISCARD_CORRUPT_PACKAGES="-fflags +discardcorrupt"
Das könnte hier was bringen, indem es ungültige Pakete verwirft.
Und dann kann es natürlich auch irgendwie am Ausgabeplugin hängen.
Ob es nun allgemeine Fehler im Stream sind, oder vermutlich doch eher ist das das Umkodieren der Audiostreams im ffmpeg nicht optimal konfiguriert. Denn bei der Android-App von Zattoo kommt das nicht vor. Da wird immer nach 2...3 Sekunden zum nächsten Stream geschaltet.
Dann sollten also nach 2-3 Sekunden die nötigen Informationen da sein.
(Umkodiert wird übriges nicht!)
Was mir jetzt noch fehlt ist das zugehörige EPG für die IPTV-Streams.
Für TVheadend habe ich dazu bereits eine passende xmltv-Datei. Die müsste man doch eigentlich auch für die IPTV-Streams im VDR verwenden können.
Nur weiß ich momentan noch nicht, wie ich diese mit den IPTV-Streams im VDR verknüpfen kann/muss. Das ist für mich noch absolutes Neuland!
Dazu solltest Du mal ein extra Thema auf machen.
Es gibt mehrere Plugins für externes EPG und ich vermute mindestens eines wird das schon können.
Mit dem Thema kenne ich mich aber null aus.
Vielleicht müsste mal jemand die Ärmel hochkrempeln und das direkt als Plugin umsetzen, damit das Starten/Stoppen von Scripts usw. wegfällt. Ich kann mir vorstellen, dass da auch noch die ein oder andere Sekunde auf der Strecke bleiben könnte.
Die Idee hatte ich schon von Anfang an, beim hbbTV-Plugin hat man diesbezüglich ja schon hervorragende Vorarbeit geleistet.
Zumindest sollte so der Umweg über den "internen" udp-Stream weg fallen und die Puffer da sparen.
Bevor man da aber mehr Zeit rein steckt, wollte ich erst mal sehen, ob das mit ffmpeg überhaupt sinnvoll funktioniert.
In KODI wird dies ja so gemacht, dass für verschiedene IPTV-Lösungen es entsprechende PVR-Addons gibt.
Das dann doch eher nicht, da bei jeder Änderung (und diese Internet-Dienste neigen dazu) das Plugin aktualisiert werden müsste.
Ich denke eher in die Richtung das iptv-Plugin irgendwie für die m3u8-Quellen aufzubohren, soweit die enthaltenen Daten unterstützt werden. Die enthaltenen hls/dash Streams sind standardisiert, da besteht zumindest die Chance das aktuell zu halten.
Der Import der m3u8 Playlisten würde dann gelegentlich über ein Skript laufen, das man recht einfach aktualisieren kann.
Und letztlich ist es ja egal, ob das EPG aus einem anderen Plugin kommt, sofern das Skript beide Konfigurationen gleichzeitig aktualisiert.
Bei der Liste mit den freien Streams von weiter oben habe ich schon mit sowas angefangen.
Leider hatte ich da bislang nur kurz Zeit dafür, so weit dass brauchbare channels.conf Einträge raus kommen bin ich noch nicht.
Immerhin sucht es mir schon das beste Programm und die Streams dazu raus. (Allein das das hat länger gedauert, als gedacht.)