TI中文支持网
TI专业的中文技术问题搜集分享网站

DM8168 DVRRDK4.0将解码的yuv420数据保存到A8数据不对

将H264编码的视频解码,然后发送到A8保存到本地的数据不对,查看资料解码出来的数据应该是yuv420sp,yuv存放应该是

Representation of YUV420SP or YUV422SP Buffer:
Field 0 Y -> addr[0][0], Field 1 Y -> addr[1][0]
Field 0 UV -> addr[0][1], Field 1 UV -> addr[1][1]
Other pointers are not valid.

我读取的是Y->addr[0][0]和UV->addr[0][1],这样取出来的数据用工具查看是乱的,应该是Y不对(效果看上图)

解码之后接DEI转换成422格式读取YUV->addr[0][0]是正常的。

Chris Meng:

你好,

是否是使用的YUV工具的问题?大部分的工具不支持YUV420sp。你是否有尝试过7yuv这个工具来显示看看?

user4865572:

回复 Chris Meng:

你好,

现在取出的addr[0][0]中Y分量的图像是正常的,但是在addr[0][1]中取UV分量不正常,查看工具使用的是7yuv,下图是保存下来的yuv数据,是否是我获取uv数据的地址不对导致?

Chris Meng:

回复 user4865572:

你好,

从下面的帖子看,addr[0][1]应该就是正确的地址。你能上传一下yuv文件让我看看么?

user4865572:

回复 Chris Meng:

你好,

图像分辨率1280×720

pic0.yuv.txt

Chris Meng:

回复 user4865572:

你好,

我看 一下U数据很多都是0x8080,是不对的。问题是否可能和A8的cache有关?

user4865572:

回复 Chris Meng:

你好,
A8获取解码后的yuv420数据的时候我试过virAddr和phyAddr,两个取出来的数据都是一样(数据不对)。
A8获取DEC->DEI转换后的yuv422数据的时候两个都是正确的

user5813816:

回复 Chris Meng:

直接从addr[0][0]读取就能拿到Y分量了吗,fid对此有没有影响?

Chris Meng:

回复 user5813816:

你好,

前面的帖子有下面相关内容:

Representation of YUV420SP or YUV422SP Buffer: Field 0 Y -> addr[0][0], Field 1 Y -> addr[1][0] Field 0 UV -> addr[0][1], Field 1 UV -> addr[1][1]

赞(0)
未经允许不得转载:TI中文支持网 » DM8168 DVRRDK4.0将解码的yuv420数据保存到A8数据不对
分享到: 更多 (0)