福州网站建设金森,要做好网络营销首先要,深圳网站建设哪家口碑好,保险公司招聘网站背景
I420 中 yuv 数据存放在3个 planes 中。 网上一般说 I420 数据大小为 widthheight1.5 但是当 width 和 height 是奇数时#xff0c;这个计算公式会有问题。 I420 中 u 和 v 的宽高分别为 y 的一半。 但是当不能整除时#xff0c;是如何取整呢#xff1f;向上还是向下这个计算公式会有问题。 I420 中 u 和 v 的宽高分别为 y 的一半。 但是当不能整除时是如何取整呢向上还是向下网上一般都没有细说。
求证过程
今天遇到个问题和这个相关。网上查询和用 ffmpeg 实验了一下。
网上查询
问了 chatgpt google 结果
https://groups.google.com/a/webmproject.org/g/webm-discuss/c/LaCKpqiDTXM https://sourceforge.net/p/raw-yuvplayer/bugs/1/
使用 ffmpeg 测试
使用 windows 自动绘图系统绘制3张 rgb 图片保存成 bmp 图片。 使用 ffmpeg 命令将图片转化为视频。 使用 ffmpeg 命令将 Mp4 转换为 yuv420p 的 yuv 数据 使用 notepad 打开数据计算 yuv 的数据长度。 最后计算结果和网络说的一样。
yuv player 播放该 yuv 数据正常
结论
uv 的宽高除以2需要向上取整以提高边缘像素精度。但是没有专业的定义如果大家找到专业定义辛苦贴到评论中。