Toybrick
标题:
如何在QT中实现0拷贝解码视频显示
[打印本页]
作者:
MadDog
时间:
2021-1-27 20:09
标题:
如何在QT中实现0拷贝解码视频显示
大家好:
我的系统是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 ?
不知道我的理解是否有问题,哪位高人在这个方面有经验,请指教一二。
谢谢
作者:
wtmelen
时间:
2022-9-12 21:03
同求,楼主实现了么
作者:
sanshixiong
时间:
2022-12-9 17:33
wtmelen 发表于 2022-9-12 21:03
同求,楼主实现了么
你好,层主实现了吗
作者:
sanshixiong
时间:
2023-1-5 16:37
直接用Qmediaplayer 就可以,可实现用mpp解码与调用gpu绘图
欢迎光临 Toybrick (https://t.rock-chips.com/)
Powered by Discuz! X3.3