This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Does CBR mean CVBR?

Hello everyone,

I am trying to fix the size of encoding video data by setting it in CBR.
But the video data have grown big/small than the value that I set.

(setting): 150kbps ---> (real): 560kbps/50kbps


Input sources are snowy noise/black 0%.
framerate: 1
bitrate: 150kbps
rcAlgorithm: CBR
I tried with DM8168DVRRDK. RDK version is 01_09_00_16.

Does CBR mean CVBR?
How do I fix the size of encoding video data?
Would you give any advice?

Best Regards
Yoji

  • Yoji,

    Can you specify the full encoder parameters, can you also send the i/p and o/p file. Looks like your test sequence comprise of Noise and black data.

    regards

    Yashwant

  • Hi Yashwant,

    Thank you for a reply.
    I understood it.
    I try it.
    Best regards.

  • Hi Yashwant,

    I changed parameters.The parameters are as follows.

    //#define ENC_LINK_DEFAULT_ALGPARAMS_RATECONTROLPRESET (IVIDEO_STORAGE)

    #define ENC_LINK_DEFAULT_ALGPARAMS_RATECONTROLPRESET (IVIDEO_USER_DEFINED) // for change rcAlgo

    //#define ENC_LINK_DEFAULT_ALGPARAMS_TARGETBITRATE (2 * 1000 * 1000)

    #define ENC_LINK_DEFAULT_ALGPARAMS_TARGETBITRATE (200 * 1000) // 200kbps

    //#define ENC_LINK_DEFAULT_ALGPARAMS_MAXBITRATE (-1)

    #define ENC_LINK_DEFAULT_ALGPARAMS_MAXBITRATE (200 * 1000) // 200kbps but ignored

    //params->rateControlParams.rateControlParamsPreset = IH264_RATECONTROL_PARAMS_DEFAULT;

    params->rateControlParams.rateControlParamsPreset = IH264_RATECONTROL_PARAMS_USERDEFINED;

    params->rateControlParams.rcAlgo = IH264_RATECONTROL_DEFAULT;

    params->rateControlParams.rcAlgo = IH264_RATECONTROL_PRC_LOW_DELAY;

    But it worked only as VBR.

    I'll try more.

    Best Regards.

  • YOJI YASUDA said:

    params->rateControlParams.rcAlgo = IH264_RATECONTROL_DEFAULT;

    params->rateControlParams.rcAlgo = IH264_RATECONTROL_PRC_LOW_DELAY;

    Not sure about 'IH264_RATECONTROL_DEFAULT'  and 'IH264_RATECONTROL_PRC_LOW_DELAY' values .  To enable CBR rate control you need to set params->rateControlParams.rcAlgo = 0.

    Please note that if you want enable Perceptual RC you need set it in dynamic param. And it is valid only for encQuality 0 and 1.

    Thanks,

    Veeranna

  • Hi Veeranna,

    Thank you for a reply.

    It is not yet solved.

    I set

     params->rateControlParams.rcAlgo = 0.

    But it works as VBR.

    I think

     VENC_RATE_CTRL_VBR=0,

     VENC_RATE_CTRL_CBR=1.

    It was written in "ti_venc.h".

    I'll try more in detail.

    Best Regards
    Yoji