Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Zheng_L_
Beginner
33 Views

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

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
33 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 

Zheng_L_
Beginner
33 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?

Petter_L_Intel
Employee
33 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 

Zheng_L_
Beginner
33 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

Reply