I am trying to force the SDK to use idc_level 30 and I am setting CodecLevel to MFX_LEVEL_AVC_3 in order to do this.
This doesn't seem to have any effect. On the target machine, a recent I5 machine (hardware encoding), an examination of the H.264 stream generated by the SDK shows that idc_level=32.
The reason for wanting level 30 is that Windows Media Player can't play our MP4 files properly on some machines. On machines where Media SDK defaults to idc_level=30, our MP4 files play fine. On machines where Media SDK uses idc_level=32, the file opens but freezes at the first frame. Needless to say, VLC plays the files fine, so this looks like a bug in WMP, but one we would like to work around by forcing idc_level=30.
Any ideas on why CodecLevel is not being honoured by Media SDK?