从Android 采集到的YUV420SP数据转换成YUV420P 疑问?

yuucyf 2015-06-04 12:58:52
看到很多 YUV420SP 转换成 YUV420P 的代码,代码都如下:

转换函数
void YUV420SPToYUV420P ( BYTE * yuv420sp, BYTE * yuv420, int width, int height )
{

int PixelsCount = width * height;
int i = 0, j= 0;

if (yuv420sp== NULL || yuv420 == NULL)
{
return;
}

//copy Y
for (i = 0; i < PixelsCount; i++)
{
*(yuv420 +i) = *(yuv420sp + i);
}

//copy Cb(U)
i = 0;
for (j = 0; j < PixelsCount / 2; j+=2)
{
*(yuv420 + (i + PixelsCount)) = *(yuv420sp + (j + PixelsCount));
i++;
}

//copy Cr(V)
i = 0;
for(j = 1; j < PixelsCount/2; j+=2)
{
*(yuv420 +(i+PixelsCount * 5/4)) = *(yuv420sp + (j + PixelsCount));
i++;
}
}


这样转换明细只考虑一个像素只占有1Byte, 如果一个像素占有4Byte, 就是 RGB+a通道,那么这样转换还对吗???
网上有很多这样的代码,YUV420SP出来的数据一个像素占用多少像素这里怎么没有考虑呢???

大虾们看看这段代码有么有问题?
...全文
189 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuucyf 2015-06-04
  • 打赏
  • 举报
回复
原来是 android 采集的分辨率错了!
yuucyf 2015-06-04
  • 打赏
  • 举报
回复
有人知道吗?? 帮忙看看呀?

80,349

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧