Ich habe einen Live-Stream von HLS und möchte ihn in MPEG-DASH konvertieren.

Was ist die beste Praxis?

Der stream ist schon h264 aac also ich verstehe ich muss nicht neu codieren und ich muss nur transmuxen.

Was soll ich benutzen? ffmpeg? mp4box?

Anmerkungen:

Ich benutzen nginx-rtmp-Modul , um nach diesem Tutorial DASH von RTMP - Stream zu erstellen: https://isrv.pw/html5-live-streaming-with-mpeg-dash Aber nginx-rtmp-Modul kann als Eingabe nur bekommen RTMP-Streams und es funktionierte nicht für mich mit HLS-Stream.

Ich habe ffmpeg verwendet, um einen Bindestrich aus m3u8 wie folgt zu erstellen:

ffmpeg -i https://82-80-192-30.vidnt.com/ipbc_IPBCchannel11LVMRepeat/_definst_/IPBCchannel11LVM_3.stream/playlist.m3u8 -strict -2 -min_seg_duration 2000 -window_size 5 -extra_window_size 5 -use_template 1 -use_timeline 1 -f dash out.mpd

Das ist aber sehr begrenzt. Ich kann die Segmentdauer nicht steuern. Der Parameter min_seg_duration von ffmpeg funktioniert bei mir nicht sehr gut und kann auch die minimale Dauer festlegen, während ich die maximale Dauer jedes Segments begrenzen möchte (das Segment wird mit ~ 10 Sekunden ausgegeben, während ich ~ 2 brauche -4 Sekunden, während ich live spiele).

user3540646
quelle