Media (Intel® Video Processing Library, Intel Media SDK)
Access community support with transcoding, decoding, and encoding in applications using media tools like Intel® oneAPI Video Processing Library and Intel® Media SDK
The Intel Media SDK project is no longer active. For continued support and access to new features, Intel Media SDK users are encouraged to read the transition guide on upgrading from Intel® Media SDK to Intel® Video Processing Library (VPL), and to move to VPL as soon as possible.
For more information, see the VPL website.

Linux Surface sharing (intel/vaapi)


Hi all,

I'm wokring in linux and I have a encoder/decoder that it is encoding and decoding good. Now, I want to perform a HW render so, I want to share the surfaces. I'm getting the surface from the MemID from Intel and I create all the necessary stuff to set up the VASurfaceID in VAAPI but it always returns invalid VASurfaceID.

I have perform the same idea under windows using DXVA and it works perfectly, So, there is any clue about why using VAAPI when vaCopySurfaceGLX function is executed to copy the VA surface to VA/GLX surface it returns bad VASurfaceID?

Also, I have checked the samples  which use VAAPI (va/X11) and the surface identifiers are the same, so I think I getting the surface information from Intel ok. This samples are working ok.

Thanks in advance!


0 Kudos
2 Replies

I resolve that error, it was related with the VADisplay I was using.

But now, I have another problem... could it be used with va-glx? I getting this error:

intel_do_flush_locked failed: No such file or directory

I'm using CentOS.. is this error releated with openGL support or something?.


0 Kudos

Hi Frenando,

Great you got the surface sharing working.
You have asked same question asked on a new thread, need more information about the application. Please provide the required information there to debug. I am closing this thread to avoid duplicates. 


0 Kudos