偶然遇到将目的分辨率设置成奇数(例如:854x481)导致ffmpeg转码失败(错误:width not divisible by 2 (854x481))
于是去查了一下原因:由于转码后的pix_fmt默认是片源相同是yuv420p的,而yuv420p中如果分辨率是奇数的话,计算出
来uv平面就是小数了,无法处理,所以yuv420p不支持分辨率为奇数的情况。
如果需求必须要分辨率是奇数的话,可以修改pix_fmt为yuv444p,这样就不会有问题了。
偶然遇到将目的分辨率设置成奇数(例如:854x481)导致ffmpeg转码失败(错误:width not divisible by 2 (854x481))
于是去查了一下原因:由于转码后的pix_fmt默认是片源相同是yuv420p的,而yuv420p中如果分辨率是奇数的话,计算出
来uv平面就是小数了,无法处理,所以yuv420p不支持分辨率为奇数的情况。
如果需求必须要分辨率是奇数的话,可以修改pix_fmt为yuv444p,这样就不会有问题了。
转载于:https://www.cnblogs.com/cmd10/p/7093393.html