Media (Intel® oneAPI 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

ocl_media_sdk_interop sample code understanding

Manish_K_
Beginner
164 Views

Hi,

I am new to C++. I am going through MEDIA framework of intel which is provided as sample code of ocl_media_sdk_interop.

There are few parts of code which I am not able to understand properly.

Why the line 

        if(m_Tasks[m_TaskIndex].m_pDecodeOutSurface && m_Tasks[m_TaskIndex].m_pDecodeOutSurface->Data.Locked)
          _InterlockedDecrement16((short*)&m_Tasks[m_TaskIndex].m_pDecodeOutSurface->Data.Locked);
        if(m_Tasks[m_TaskIndex].m_pOCLOutSurface && m_Tasks[m_TaskIndex].m_pOCLOutSurface->Data.Locked)
            _InterlockedDecrement16((short*)&m_Tasks[m_TaskIndex].m_pOCLOutSurface->Data.Locked); 

in mfxStatus CDecodingPipeline::DecodeOneFrame(int Width, int Height, IDirect3DSurface9 *pDstSurface, IDirect3DDevice9* pd3dDevice) function is being used? What is exactly the purpose of _InterlockedDecrement16((short*)&m_Tasks[m_TaskIndex].m_pDecodeOutSurface->Data.Locked); ?

In this sample code how would I get to know that the output on screen shown is decoder output or openCL output?

What considerations should I take while integrating the encoder in this workspace?

 

0 Kudos
0 Replies
Reply