NV12数据格式。

benjamin721 2015-10-17 09:44:02
我在做一个YUV422转NV12的程序。
对于plannar格式的NV12文件,我按照YYYYUV的形式保存在一个w*h*3/2的数组里,再一次性将整个数组fwrite写入到.yuv文件,完成一帧的写文件。

但是这样操作后播放出来的视频是黑白的,没有花屏。感觉播放器只读取了Y分量,没有读取UV分量。
播放器的设置是正确的,播放其他plannar的YUV420是正确的。

看网上对plannar格式的描述如下:
YUV 格式通常有两大类:打包(packed)格式和平面(planar)格式。前者将 YUV 分量存放在同一个数组中,
通常是几个相邻的像素组成一个宏像素(macro-pixel);而后者使用三个数组分开存放 YUV 三个分量,就像
是一个三维平面一样。



请问,是否这样写NV12文件的操作是否错误??
...全文
600 点赞 收藏 2
写回复
2 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
falloutmx 2015-10-19
图像对了说明Y的存放时没问题的了。打开YUV文件看二进制数据,看看UV的值是多少。或者用yuv viewer也可以看到每个像素点的YUV值
回复
yuv422和420区别很大的,我只会这两个的转化,nv12没做过,你可以去看fanbird2008的博客,有详细的介绍
回复
相关推荐
发帖
驱动开发/核心开发
创建于2007-09-28

2.1w+

社区成员

硬件/嵌入开发 驱动开发/核心开发
申请成为版主
帖子事件
创建了帖子
2015-10-17 09:44
社区公告
暂无公告