Wie kann ich mp4 aus der http live stream m3u8 Datei extrahieren? Ich habe diesen Befehl unten versucht:
ffmpeg -i {input file} -f rawvideo -bsf h264_mp4toannexb -vcodec copy out.mp4
Ich habe diesen Fehler gemacht:
[NULL @ 0000000002f07060] Der Paket-Header ist nicht in globalen Extradaten, einem beschädigten Stream oder einem ungültigen MP4 / AVCC-Bitstream enthalten. Fehler beim Öffnen des Bitstream-Filters h264_mp4toannexb für Stream 0 mit Codec-Kopie: I.
ffmpeg
http-live-streaming
thiago.adriano26
quelle
quelle
Antworten:
Ihr Befehl ist völlig falsch. Das Ausgabeformat ist nicht
rawvideo
und Sie nicht die Bitstrom - Filter benötigen ,h264_mp4toannexb
die verwendet wird , wenn Sie die konvertierendeh264
enthalten in einemmp4
zu demAnnex B
Format , das von verwendeteMPEG-TS
zum Beispiel. Was Sie stattdessen verwenden möchten, ist dasaac_adtstoasc
für dieAAC
Streams.quelle
-t <time>
nach der Eingabe in s oder hms.msDie Antwort von Aergistal funktioniert, aber ich habe festgestellt, dass das Konvertieren in mp4 einige m3u8-Videos beschädigen kann. Wenn Sie mit diesem Problem nicht weiterkommen , versuchen Sie, sie in mkv und später in mp4 zu konvertieren .
quelle
ffmpeg -i http://...m3u8 -c copy live.mkv
das sehr gut funktioniert. Nur wenn jemand vorbeikommt und dies liest..ts
funktioniert auch ruhig gut für einige Streamsffmpeg -i file.mkv file.mp4
aber warum sollte man das tun?m3u8
Datei musste ich auch eine weiße Liste vorne hinzufügen, wie:ffmpeg -protocol_whitelist file,http,https,tcp,tls,crypto -i 02.m3u8 -c copy 02.mkv