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
Announcements
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.
3058 Discussions

Do I have to use video memory if I want HW accelerated VPP operation?

Zheng_L_
Beginner
291 Views

the doc in SDK said,"The SDK goes through the Microsoft* DirectX* infrastructure (Direct3D9 DXVA2 or Direct3D11 Video API) for hardware acceleration", is it means I must set "MFX_IOPATTERN_IN_VIDEO_MEMORY" & "MFX_IOPATTERN_OUT_VIDEO_MEMORY" to the "IOPattern" parameter,and I had to allocate DirectX surface by myself? If I use "MFX_IOPATTERN_IN/OUT_SYSTEM_MEMORY",the sw version library will be used,is it?

0 Kudos
4 Replies
Petter_L_Intel
Employee
291 Views

Hi Zheng,

The selected "IOPattern" has no connection to if the workload is executed on HW or SW. "IOPattern" just indicates where the input or output surfaces are located, which is either in D3D memory (preferable when using HW acceleration) or system memory (preferable when using SW). Either "IOPattern" type can be used with HW and SW.

HW or SW execution selection is selected using the parameter "mfxImpl".

Regards,
Petter 

0 Kudos
Zheng_L_
Beginner
291 Views

Petter Larsson (Intel) wrote:

Hi Zheng,

The selected "IOPattern" has no connection to if the workload is executed on HW or SW. "IOPattern" just indicates where the input or output surfaces are located, which is either in D3D memory (preferable when using HW acceleration) or system memory (preferable when using SW). Either "IOPattern" type can be used with HW and SW.

HW or SW execution selection is selected using the parameter "mfxImpl".

Regards,
Petter 

Did you means I use system memory as input & output surface,the driver of intel can put the data in system memory to D3D memory automatically, and do vpp processing with hw accelerated,and also readout the result from D3D memory to system memory automatically?

0 Kudos
Petter_L_Intel
Employee
291 Views

Hi Zheng,

Correct. If the input surface is on system memory and HW codec is selected, then Media SDK will automatically perform copy from system memory to D3D memory before scheduling the task.The same case is true for output surfaces.

Conversely, if input D3D surface and a SW codec is used, then Media SDK will copy data from D3D surface to system memory before scheduling the task.

Regards,
Petter 

0 Kudos
Zheng_L_
Beginner
291 Views

Petter Larsson (Intel) wrote:

Hi Zheng,

Correct. If the input surface is on system memory and HW codec is selected, then Media SDK will automatically perform copy from system memory to D3D memory before scheduling the task.The same case is true for output surfaces.

Conversely, if input D3D surface and a SW codec is used, then Media SDK will copy data from D3D surface to system memory before scheduling the task.

Regards,
Petter 

Thanks! Peter

0 Kudos
Reply