how to guarantee hw decoding of H264 video

how to guarantee hw decoding of H264 video

I have a 1600x1200 4Mbps H264 video stream. When I use the sample_decoder.exe from MediaSDK 2012 to decode this video file, and add the "-hw" switch to the command line, decoding is still dispatched to the CPU software (according to GPA Media Performance window). I even checked by MFXQueryIMPL and it returns MFX_IMPL_HARDWARE. If I play this video file in media player, I can see in GPA that it's decoded by GPU HW. If I use sample_decoder.exe on a smaller video (e.g. 1920x1088), it's scheduled to GPU.

Doesn't MediaSDK support hw decoding of large frame size?Since media player can use GPU HW, how to enforce hw decoding of this video stream in MediaSDK?


5 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Hi sailuo,

Unfortunately Media SDK does not support HW acceleration for the frame resolution you are using. Please refer to an earlier post on this matter for details:

If the frame size is greater, the implementation will fall back on the SW codec, as you have seen.



Hardware accelerated encoding/decoding supports levels up to 4.2. As a consequence of this is the limitation defined by standards for the maximum bitrate, resolution and framerate, in this case the resolution islimitedby 1920x1088 (HD).

Kind regards,

Hi Vassili,

Are you saying you cannot encode/decode stream using AVC levels above 4.2? If so, I would suggest revisiting the set of parameters you use. For instance, AVC profile High with level 5.0 and 5.1 does work fine with HW acceleration.


Hi Petter,

Indeed, it works also with levels above 4.2.


Leave a Comment

Please sign in to add a comment. Not a member? Join today