Toybrick

rga转格式图像底部有2行像素数据不对

appleUncle

中级会员

积分
440
楼主
发表于 2020-5-14 09:10:54    查看: 7706|回复: 6 | [复制链接]    打印 | 只看该作者
本帖最后由 appleUncle 于 2020-5-14 09:41 编辑

我用的RK3399Pro入门教程(10)RTSP推流介绍中的rtsp推流代码,fedora系统。按照教程做的,推流拉流都很正常,调用RGA转格式,其中YUYV转NV12也是正常的,但是RGB24转NV12出现图像底部有2行像素数据乱码的情况(RGB24是opencv Mat cv8uc3的格式),具体见下图。我试过用RGA将YUYV转成RGB24是正常的,就是将RGB24转NV12出现2行像素乱码,感觉是RGA库转改格式的时候图像底部没有处理好?下图左边是正常RGB24图片,右边是RGB24转NV12后再转回RGB24的图片

下图是填充的纯黑RGB24图片转成NV12推流出去之后接收到的样子


注意底部有2行像素乱码
代码如下:
  1. int frame_size = 640 * 480 * 1.5*sizeof(unsigned char);
  2. unsigned char *frame_nv12 = NULL;
  3. frame_nv12 = (unsigned char *)malloc(frame_size);
  4. cv::Mat tmp= output.clone();

  5. RockchipRga *rga;
  6. rga = RgaCreate();
  7. rga->ops->initCtx(rga);
  8. rga->ops->setDstBufferPtr(rga, frame_nv12);
  9. rga->ops->setSrcBufferPtr(rga,(unsigned char *)tmp.data);
  10. rga->ops->setDstFormat(rga, V4L2_PIX_FMT_NV12, 640, 480);
  11. rga->ops->setSrcFormat(rga, V4L2_PIX_FMT_RGB24, 640, 480);
  12. rga->ops->setRotate(rga, RGA_ROTATE_NONE);
  13. rga->ops->go(rga);
复制代码



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

appleUncle

中级会员

积分
440
沙发
 楼主| 发表于 2020-5-14 10:04:40 | 只看该作者
我用的size是640*480,高宽都是16对齐的,应该也不是16对齐的问题,那是什么原因呢?
回复

使用道具 举报

jefferyzhang

版主

积分
13578
板凳
发表于 2020-5-14 11:20:03 | 只看该作者
转完sleep个几ms再存文件试试。

你的板子是toybrick的么?kernel是我们的么?
回复

使用道具 举报

appleUncle

中级会员

积分
440
地板
 楼主| 发表于 2020-5-14 11:27:16 | 只看该作者
jefferyzhang 发表于 2020-5-14 11:20
转完sleep个几ms再存文件试试。

你的板子是toybrick的么?kernel是我们的么?

sleep500 ms试了,还是一样。用的toybrick rk3399PROD板子,官方fedora28固件
回复

使用道具 举报

jefferyzhang

版主

积分
13578
5#
发表于 2020-5-14 11:28:41 | 只看该作者
appleUncle 发表于 2020-5-14 11:27
sleep500 ms试了,还是一样。用的toybrick rk3399PROD板子,官方fedora28固件

其他分辨率会么?
回复

使用道具 举报

appleUncle

中级会员

积分
440
6#
 楼主| 发表于 2020-5-14 13:13:47 | 只看该作者

1920*1088测试没问题
回复

使用道具 举报

appleUncle

中级会员

积分
440
7#
 楼主| 发表于 2020-5-14 13:45:13 | 只看该作者

1920*1088细看的话底部大概也有1~2个像素是白点,640*480问题还是很明显
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

产品中心 购买渠道 开源社区 Wiki教程 资料下载 关于Toybrick


快速回复 返回顶部 返回列表