|
大家好:
我的系统是debian10+3399ProD,我希望达到的目标是实时解码多路视频然后进行界面显示;
目前我实现了基于drm的0拷贝的多路画面显示,实现思路是:解码得到内存handle1,RGA进行格式转换(NV12到RGBA)得到handle2,
然后通过drmModeSetCrtc将handle2刷新出去。
但是我的应用是基于QT来实现的,如何将我的视频画面和QT的界面结合在一起呢?
我看其他人的帖子的思路是通过openGLES来实现,看完代码后有一个问题没有搞清楚,我理解openGLES起的作用是把解码得到的Buffer,
拷贝到texture中,然后通过shader转换为RGBA格式绘制到frameBuffer中,然后通过drmModeSetPlane显示出去。
在这个过程中,存在一次内存拷贝(Buffer到纹理),openGLES在其中起到的作用是高效转换格式,这个完全可以用RGA进行替代,那
为什么还要用openGLES ?
不知道我的理解是否有问题,哪位高人在这个方面有经验,请指教一二。
谢谢
|
|