Community
cancel
Showing results for 
Search instead for 
Did you mean: 
207 Views

Is it efficient: Copy decoded video frame into OpenGL by OpenCL kernel?

Jump to solution

Hi

I integrated Intel QuickSync with Intel MediaSDK into a product, which uses OpenGL for video displaying.

My integration receives frame data into system memory.

While benchmarking I encountered, that decoding  into Direct3D memory is much faster.

So, I imagine, that QuickSync decodes frame into Direct3D, and then copies it (probably via DMA) into system memory.

So, in my system, each decoded frame happens double copying of frame data from GPU memory to System memory and back.

As far as I didn't find simple way to copy or use Direct 3D data in OpenGL, I got an idea to copy media frame data inside of GPU memory.

There is OpenCL to DirectX interoperability and OpenGL-openCL interoperability.

The question is: Will this work?

If yes - will it be more efficient, than double DMA via System memory?

0 Kudos
1 Solution
Anthony_P_Intel
Employee
207 Views

Hi,

Sorry I missed seeing this question earlier.  I believe the OpenGL extension "WGL_NV_DX_interop" may provide a direct DX->OpenGL solution. I know the OpenGL extension was added to Intel drivers a while ago, but I do not know the latest performance (or if it even supports NV12 media surfaces).  I'll check.

View solution in original post

9 Replies
Anthony_P_Intel
Employee
208 Views

Hi,

Sorry I missed seeing this question earlier.  I believe the OpenGL extension "WGL_NV_DX_interop" may provide a direct DX->OpenGL solution. I know the OpenGL extension was added to Intel drivers a while ago, but I do not know the latest performance (or if it even supports NV12 media surfaces).  I'll check.

View solution in original post

207 Views

glew-1.10.0 reports missing WGL_NVDX_interop capabilities :(
does it mean it is implemented differently?

glew does not recognize this extension because it checks this capability by NVIDIA algorithm?

 

Anthony_P_Intel
Employee
207 Views

Hi,

I just checked this and I see glew-1.10.0 reporting this extension as supported.

Are you accessing your platform while the Intel graphics adapter is active and DirectX usage is available?

There are several reasons why usability of any Direct3D9 capability might not be available.  (old hardware, remote desktop usage with no monitor, etc.)

Are any D3D9-based applications successfully operating with acceleration? (including MediaSDK?). You can run "dxdiag" and provide the output if you would like me to analyze why you might not be seeing the WGL_NV_DX_interop extension supported.

207 Views

I use 2 computers. One is  i3 2100 + H61 chipset

Another is i3 2120 + H77 chipset

both run QuickSync ( hardware accelerated MediaSDK )  I verified it under debugger.

both reports WGL_NV_DX_interop capabilities MISSING

I attach DxDiag of the first configuration

If it is helpful, I will provide second configuration on Monday.

207 Views

I attach DxDiag from H77 chipset

Anthony_P_Intel
Employee
207 Views

The processors on these systems are 2nd Generation Intel® Core™ i3 Processors and this OpenGL feature was introduced in the 3nd Generation Intel® Core™ Processors (with Intel® HD Graphics 2500 or newer).

 

207 Views

Thank you this is good answer.

However, I still ask about methodology D3D to OpenGL copying with OpenCL ( for possibility to use Intel HD Graphics 2000 also)

Besides, how to recognize is WGL_DX_NV_interop capability supported in the system, running my software?

207 Views

Since now II have i5-3570K CPU on GigaByte GA-H77M-D3H motherboard

WGL_DX_NV_interop is still missing :(

I attach new DxDiag and glewinfo files.

is it possible that some other software is missing?

 

 

Anthony_P_Intel
Employee
207 Views

Hi,

From this DxDiag output, it looks like the Intel(r) HD Graphics drivers have not been installed yet (vga driver was listed).  You can obtain the latest drivers here from downloadcenter.intel.com.

Also, i noticed this is running Windows 7.  The Intel(r) 3rd Generation system i checked was running Windows 8.  I believe the Intel OpenGL capabilities are the same on win7 and 8, but I can check with others to make sure.

 

Reply