web-dev-qa-db-ja.com

HTTPライブストリーミングm3u8ファイルのFFMPEG mp4

Httpライブストリーミングm3u8ファイルからmp4を抽出するにはどうすればよいですか?以下のコマンドを試しました。

ffmpeg -i {input file} -f rawvideo -bsf h264_mp4toannexb -vcodec copy out.mp4

私はこのエラーを取りました:

[NULL @ 0000000002f07060]パケットヘッダーがグローバルエクストラデータ、破損したストリーム、または無効なMP4/AVCCビットストリームに含まれていないコーデックコピーでストリーム0のビットストリームフィルターh264_mp4toannexbを開けませんでした:I

53

あなたの命令は完全に偽です。出力形式はrawvideoではなく、h264_mp4toannexbに含まれるh264を、たとえばmp4で使用されるAnnex B形式に変換する場合に使用されるビットストリームフィルターMPEG-TSは必要ありません。代わりに使用したいのは、AACストリームのaac_adtstoascです。

ffmpeg -i http://.../playlist.m3u8 -c copy -bsf:a aac_adtstoasc output.mp4
134
aergistal

Aergistalの答えは機能しますが、mp4に変換するとm3u8ビデオが壊れることがあります。この問題が解決しない場合は、それらをmkvに変換し、後でmp4に変換してください。

10
blackmiaool