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.

MPEG-2 Hardware encoding

martinjohansson
Beginner
372 Views
I'm having problems using sample_encode to do hardware (-hw flag) encoding. The problems I'm having is it takes longer time with -hw flag than without. I can also see that the CPU usage is around 50%. I have tried with h264 and both encode/decode is possible with -hw flag set. Also decode of mpeg2 looks good and it seems to be utilizing the GPU. I was expecting similar results in performance as I saw with h264 encoding hw/sw.

I'm running Windows 7 Proffessional x64 using a i7 2600K with a Intel Desktop board (DZ68DB) . My graphics driver v. is (8.15.10.2509). From what I understand it should be possible to do HW encode of mpeg2 with my setup.

I've tried sample_encode from Intel Media SDK (3.0.554.34012 Beta 4) and (2.0.12.24071).

Any ideas what could be wrong here?
0 Kudos
1 Reply
Petter_L_Intel
Employee
372 Views
Hi Martin,

With your machine you will certainly be able to do both HW encode and decode.

Can you provide a bit more details on the content you are feeding sample_encode, such as resolution, codec type, and what encoder parameter settings you are using?

Some things to note. For optimal HW performance make sure to use D3D surfaces and NV12 raw input data. Also keep in mind that if large resolution raw YUV frame data is used as the input to encoder, there will be a noticeable impact on performance and CPU load due to intense disk access. Due to the required disk access to feed encoder, data sample_encode (and sample_decode) is not suitable for performance measurements.

Note that Media SDK MPEG2 HW encode often deliver similar performance as SW encode (if that is the case there is still a large energy efficiency benefit due to low CPU utilization). H.264 HW encode is normally much faster than SW encode, but naturally the actual speedup will depend on the workload and encoder settings.

Regards,
Petter
0 Kudos
Reply