从.mov转换为mp4文件时,ffmpeg中的-pix_fmt发生错误

时间:2014-07-17 09:11:57

标签: video ffmpeg

我正在尝试使用ffmpeg将.mov转换为.mp4我的命令是:

ffmpeg -i input.mov -vcodec libx264 -acodec copy output.mp4

但它给我这样的错误

    [buffer @ 00000000059bf480] Unable to parse option value "-1" as pixel format
Last message repeated 1 times

[buffer @ 00000000059bf480]错误将选项pix_fmt设置为值-1。 [来自流0的图0输入:4 @ 00000000043fd8a0]将选项应用于。时出错  过滤。 打开过滤器时出错!

即使我尝试了另一个命令

ffmpeg -i input.mov -vcodec copy -acodec copy output.mp4

但它只转换了一部分,第一部分是空白的声音然后在一段时间后图片来了......

我有两个Q

1]对于第一个命令什么是-pix_fmt以及要为其设置什么值?

2]第二个命令为什么只提供一些部分,因为我正在复制所有vcodec以及acodec ..

请指导我.. !!

3 个答案:

答案 0 :(得分:3)

可能选择的个人资料不支持4:2:2。

因此,您需要通过在命令中添加"-pix_fmt yuv420p"来提及4:2:0。

希望这会解决它。

答案 1 :(得分:1)

FFmpeg的“无法解析选项值'-1'作为像素格式”确实发生损坏或更难解析视频(尽管邮件列表上有doubted)。我已经拥有它,最好的comment就是尝试增加分析 - 就像在ticket中一样。一些ffmpegs / avconvs也提供了关于修补探测的说明:

  

无法找到流0的编解码器参数(视频:h264(avc1 / 0x31637661),无,720x576,869 kb / s):未指定的像素格式   考虑增加'analyzeuration'和'probesize'选项的值

好吧,两个都没有在我试过的文件上工作:

  

[mov,mp4,m4a,3gp,3g2,mj2 @ 0x2c36940]多个编辑列表条目,可能会发生a / v desync,欢迎修补   [mov,mp4,m4a,3gp,3g2,mj2 @ 0x2c36940]达到max_analyze_duration 5000000

但其他人的里程可能会有所不同。

答案 2 :(得分:-1)

您正在运行旧版本的ffmpeg。从.mov到.mp4的转换问题是固定的。见this

下载最新版本。 我建议从二进制文件安装最新版本,因为它更简单。我回答了同样的here

-pix_fmt是像素格式,其值应为整数。

运行ffmpeg -pix_fmts以查看所有可用的像素格式。