2014-12-01 8 views
5

Hallo Ich habe eine Live-HTTP-Stream-Eingang für ffmpeg ich will HLS Streaming im mit ffmpeg schaffen, dies zu tunffmpeg HTTP Live Streaming alte Segmente entfernen

ffmpeg -i http://127.0.0.1:4242/bysid/7275 -map 0 -codec:v libx264 -codec:a copy -f ssegment -segment_list playlist.m3u8 -segment_list_type hls -segment_list_size 10 -segment_list_flags +live -segment_time 10 out%03d.ts 

i funktioniert Ich möchte nur die alte löschen segmens, die nicht in playlist.m3u8 gezeigt wird

segment_list_size 10 

dies die letzten 10 in der Playlist-Datei hält ich will nur diese Dateien auf der Festplatte halten

Antwort

6

Sie c eine Verwendung der kürzlich hinzugefügte Option zum HLS segmenter:

-hls_flags delete_segments 

Sie müssen Ihren Befehl ändern, um die HLS segmenter anstatt den Strom segmenter unter Verwendung -f HLS statt -f ssegment zu verwenden.

Ich habe diese Option verwendet und es tut nicht genau, was Sie anfordern, aber es ist implementiert, um mit der HLS-Spezifikation zu entsprechen. Siehe die ffmpeg-Dokumentation Weitere Informationen: https://www.ffmpeg.org/ffmpeg-formats.html

+0

I -f Segment ersetzt HLS -f, aber ich habe Fehler: Kann nicht schreiben Header für Ausgabedatei # 0 (falsch-Codec-Parameter?): Invali d Argument –

+0

aktualisieren ffmpeg Das sollte es lösen. – CoDEmanX