我的项目是使用与FFmpeg链接的VAAPI硬件加速。
我设法使用 VAAPI 进行解码,但是我希望能够使用 OpenGL 显示来自 VAAPI 的视频。
是否有允许这样做的功能?
我知道为此你必须使用 VAAPI 的表面VASurfaceID
,但我不明白如何......
您可以使用 functions vaCreateSurfaceGLX()
,vaCopySurfaceGLX()
并vaCopySurfaceGLX()
为此目的。还有其他使用 DRM 和 EGL 的替代方案,但在我看来,实现起来要困难得多。您可以在mpv 源代码中找到使用 EGL 的示例。