我一直在使用此命令将一系列 JPEG 图像转换为 h264 编码的视频,而且效果很好。
x264 "/path/to/input/%04d.jpg" --crf 18 -o /my/output/file.mp4
直到最近我才尝试在一系列 JPEG 图像上运行它发生具有奇数尺寸(在我的情况下为 437x437)。现在我得到了以下输出:
ffms [error]: could not create index
lavf [info]: 437x437p 1:1 @ 25/1 fps (vfr)
resize [error]: resolution 437x437 is not compliant with colorspace i420
我敢发誓我以前遇到过这个错误,解决办法是在命令中添加裁剪过滤器
--vf crop:0,0,1,1
这样视频在尝试编码之前就会被裁剪成兼容的大小,但现在我尝试这样做似乎没有任何区别。我甚至可以为裁剪参数输入一些奇怪的值,它根本不会抱怨,这说明 x264 在处理我的裁剪过滤器之前试图以某种方式调整输入的大小,所以在我有机会修复问题之前它就出错了。
知道我做错了什么吗?
如果有任何区别,这是在 Ubuntu 12.04 上,使用来自系统“x264”包的 x264。