cmd10

导航

ffmpeg奇数分辨率转码失败

偶然遇到将目的分辨率设置成奇数(例如:854x481)导致ffmpeg转码失败(错误:width not divisible by 2 (854x481))

于是去查了一下原因:由于转码后的pix_fmt默认是片源相同是yuv420p的,而yuv420p中如果分辨率是奇数的话,计算出

来uv平面就是小数了,无法处理,所以yuv420p不支持分辨率为奇数的情况。

如果需求必须要分辨率是奇数的话,可以修改pix_fmt为yuv444p,这样就不会有问题了。

posted on 2017-06-29 11:06  cmd10  阅读(839)  评论(0编辑  收藏  举报