I was reading the release notes for Media SDK 20.2.1 and there is something that confuses me regarding support for per-CU QP control for HEVC encoding. It is written under the "Known Limitations - HEVC encode" section that only a subset of extended buffer parameters are supported. In CodingOption3 buffer, EnableMBQP is not listed which technically means that Per CU QP is not supported for HEVC encode? However, further down in that same section, it is written "Per-LCU QP mode has the following limitations..." which also means that it is supported in a limited way.
In short, I just want to know if per-CU QP control is currently available with Intel Media SDK for HEVC encode.
Thanks in advance!
Yes, dev team confirmed we do support Per-LCU QP, this means all CUs in LCU(largest coding unit) have the same average QP.
I am still confirming the detail to the document on page 14 and 15 of RN you mentioned.
Thanks for your answer Mark.
In that case, do you know how to activate the per-LC QP feature then if mfxExtCodingOption3::EnableMBQP is not available yet for HEVC Encode?
Sorry for the late response, I made a mistake and replied in wrong place.
Here is my post:
I believe this should be EnableMBQP field, did you try it yet?
I will double check with dev team although I am quite sure this is.
I also check LCU support doesn't have the size limitation.
I did finally try it and it seems to be working.
It means there's a mismatch between the release note and the actual code for the mfxExtCodingOption3::EnableMBQP then. The release note makes it look like there is no support yet for EnableMBQP.
Thanks so much for using our product,
Yes, I have file the issue and I will make sure it is fixed.
Again, thanks for reporting this issue. This is a big help to our product.
One more question about per LCU QP control. Now that I've got it working, I was wondering what kind of performance should I expect from that feature on HEVC?
I tried comparing H264 with and without EnableMBQP and I got the following throughput in 1280x720: 339 fps without EnableMBQP and 595 fps with EnableMBQP. We observe here a gain in throughput by activating EnableMBQP.
On the other hand, in H265, we have: 180 fps without EnableMBQP and it drops to 71 fps when activating EnableMBQP.
In short, is it normal that we are observing a significant performance drop in HEVC when activating EnableMBQP while in H264 we gain throughput?
OS: Ubuntu 20.04
CPU: Intel Core i9-9900K @ 3.60 GHz (Coffee Lake)
SDK and drivers:
- Intel Media SDK Version 20.2.1 (also tested on 20.4.pre)
- Media Driver 20.2.0
- Gmmlib 20.2.2
- libva 2.8.0
- libva-utils 2.8.0
Thanks so much for the testing,
This is helpful and also a good point. I will transfer the request to dev team.
Since this is out of the scope of original post, could you create this in a new post?
Thanks so much and apologize if this introduces any inconvenience.