Apologies for late response. Were you using sample - sample_encode to do so? Generally when bitrate(in Kbps) is less than 0 or not mentioned then it is passed through the function of Calculatedefaultbitrate() which consider height width and framerate to calculate frame rate. Check sample_utils.cpp in sample_encode for more details.
mfxF64 at = nWidth * nHeight * dFrameRate / 30.0;
case MFX_TARGETUSAGE_BEST_QUALITY :
bitrate = (&fnc)->at(at);
case MFX_TARGETUSAGE_BEST_SPEED :
bitrate = (&fnc)->at(at) * 0.5;
case MFX_TARGETUSAGE_BALANCED :
bitrate = (&fnc)->at(at) * 0.75;
If I didn't get your question right, can you please provide us the reproduces and input in which you are seeing the issue, will be happy to debug.
I already solved the problem..
It was my mistake, but I will try describe the situation more detailed.
I was set targetkbps to 8000, targetusage to speed also I set ratecontrol to vbr, but the framerate I set not correctyl, except 1/50 it was 50/1.
and the resulting bitstream was very bad quality and the bitrate was up to 200mbps. by changing framerate to correct value it was fixed.
Thanx for the answer.