8

当我使用命令行使用 ffmpeg 提取视频流时:

ffmpeg -i {一些文件} -vcodec 复制 -an -f {rawvideo|h264|whatever} out.h264

对于 Adob​​e Media Encoder 生成的某些媒体文件,只有 .m4v(编码为 h.264 蓝光)文件可以产生一些可用的结果。

其他一些格式(如 .f4v)可以生成 h.264 流,但没有 PPS/SPS,并且每个切片都以大小而不是 00 00 00 01 序列开头。

我希望我可以从尽可能多的包含有效 h.264 流的文件中提取附件 b 格式的原始流。我知道我可以自己添加 PPS/SPS 并将大小更改为 00 00 00 01。但是有没有现有的软件可以做到这一点?


或者可以保证ffmpeg总是可以从.m4v文件中提取附件b格式的流,不管文件是用什么软件编码的?

4

1 回答 1

13

您可能正在寻找的是 h264_mp4toannexb 比特流过滤器,使用 -bsf 命令行选项调用:

ffmpeg -i {some file} -vcodec copy -bsf h264_mp4toannexb -an -f {rawvideo|h264|whatever} out.h264

请注意,如果您的 FFmpeg 版本有点旧,您可能需要使用 -vbsf 而不是 -bsf(该选项最近已重命名)。

于 2012-05-01T01:44:48.303 回答