rockchip-linux / mpp

Media Process Platform (MPP) module
515 stars 160 forks source link

调用MPP中 rga_control函数报错,请问该如何解决? #443

Closed RockLing-18 closed 11 months ago

RockLing-18 commented 11 months ago

代码中使用rga_control函数将yuv转换为rgb,效率很高,在rk3568盒子上正常运行。同样的代码在rk3588盒子上编译运行,在调用rga_control函数,命令RGA_CMD_RUN_SYNC时报错,加了日志打印,参数方面两盒子完全一致,不知道什么原因导致的。两个盒子区别在于rga的驱动版本不一致,rk3568是rga2,rk3588是rga3,请问有大佬遇到过类似的问题吗?有解决该问题的方向吗?调用的代码如下:

ret = rga_control(m_rga_ctx, RGA_CMD_SET_SRC, src_yuv);
if (ret) 
{
printf("rga cmd setup source failed %d\n", ret);
return -1;
}

ret = rga_control(m_rga_ctx, RGA_CMD_SET_DST, m_originalData.dst_frm);
if (ret) 
{
printf("rga cmd setup destination failed %d\n", ret);
return -1;
}

ret = rga_control(m_rga_ctx, RGA_CMD_RUN_SYNC, NULL);
if (ret) 
{
printf("rga cmd process copy failed %d\n", ret);
return -1;
}
HermanChen commented 11 months ago

mpp 的 rga 很旧的 api 了,github 上还有个专门的 librga