Hallo,
so nun bin ich soweit das ich mal wieder Tester suche. Ich habe einen Streaming Converter geschrieben der mit Hilfe der Kodi inputstream-adaptiv lib einen dash Stream auf mpegts convertiert. Gleichzeitig bedient der inputstream-adaptive auch die widevine lib und dekodiert den Stream.
Das ganze kann sehr leicht in die IPTV Struktur des VDR intergriert werden. Dazu gibt es im Repository eine Beispiel channels.conf mit den ORF Kanälen. Das eigentlich Programm heisst dash2ts und kann auch ohne den VDR getestet werden.
Aufruf:
dash2ts <link_auf_das_manifest.mpd> <portnr> <widevine_token>
Den widevine token kann man auch weglassen wenn der Stream nicht verschlüsselt ist. Der Stream wird dann auf localhost:portnr per UDP gesendet. Zum testen kann man sich das dann z.b. mit "mpv udp://127.0.0.1:portnr ansehen.
Das ganze widevine handling wird vom inputstream-adaptive gemacht. Allerdings braucht es dafür einen Token um den Key bei widevine abzufragen. Dieser Token muss mitgegeben werden. Wie man daran kommt ist wohl Provider abhängig. Ich habe das ganze mal für den ORF umgesetzt und dafür das ORF Plugin für Kodi etwas analysiert. Ich vermute ich muss die Aufruf API für widevine noch ändern. Derzeit wird nur der token übergeben, aber ich denke es wird wohl der ganze link zum widevine server werden müssen.
Derzeit sind noch ein paar fixe Pfade hardcodiert. Das muss man in dash2ts.cpp für den Aufruf ReadXMP und LoadAddon entsprechend anpassen. Auch das Setting DECRYPTERPATH ist anzupassen.
Das umschalten ruckelt leider noch ein wenig, aber wenn es mal läuft dann läuft es
Das ganze ist im Git https://github.com/jojo61/dash2ts
Feedback erwünscht
jojo61