> -----Ursprüngliche Nachricht----- > Von: ffmpeg-devel [mailto:ffmpeg-devel-boun...@ffmpeg.org] Im Auftrag > von Michael Niedermayer > Gesendet: Freitag, 14. August 2015 10:32 > An: FFmpeg development discussions and patches > Betreff: Re: [FFmpeg-devel] [PATCH] Changed max bitrate for VBV mode > (according to Ivan Uskow) > > On Fri, Aug 14, 2015 at 07:37:08AM +0200, Sven Dueking wrote: > > > > > > > -----Ursprüngliche Nachricht----- > > > Von: ffmpeg-devel [mailto:ffmpeg-devel-boun...@ffmpeg.org] Im > > > Auftrag von Michael Niedermayer > > > Gesendet: Donnerstag, 13. August 2015 17:41 > > > An: FFmpeg development discussions and patches > > > Cc: Sven Dueking > > > Betreff: Re: [FFmpeg-devel] [PATCH] Changed max bitrate for VBV > mode > > > (according to Ivan Uskow) > > > > > > On Thu, Aug 13, 2015 at 11:30:45AM +0100, Sven Dueking wrote: > > > > From: Sven Dueking <s...@nablet.com> > > > > > > > > --- > > > > libavcodec/qsvenc.c | 6 +++++- > > > > 1 file changed, 5 insertions(+), 1 deletion(-) > > > > > > > > diff --git a/libavcodec/qsvenc.c b/libavcodec/qsvenc.c index > > > > 57f5fe4..b56e4b4 100644 > > > > --- a/libavcodec/qsvenc.c > > > > +++ b/libavcodec/qsvenc.c > > > > @@ -118,10 +118,14 @@ static int init_video_param(AVCodecContext > > > > *avctx, QSVEncContext *q) > > > > > > > > switch (q->param.mfx.RateControlMethod) { > > > > case MFX_RATECONTROL_CBR: > > > > + q->param.mfx.InitialDelayInKB = avctx- > > > >rc_initial_buffer_occupancy / 1000; > > > > + q->param.mfx.TargetKbps = avctx->bit_rate / 1000; > > > > + q->param.mfx.MaxKbps = avctx->bit_rate / 1000; > > > > + break; > > > > case MFX_RATECONTROL_VBR: > > > > q->param.mfx.InitialDelayInKB = avctx- > > > >rc_initial_buffer_occupancy / 1000; > > > > q->param.mfx.TargetKbps = avctx->bit_rate / 1000; > > > > - q->param.mfx.MaxKbps = avctx->bit_rate / 1000; > > > > + q->param.mfx.MaxKbps = avctx->rc_max_rate / > 1000; > > > > > > why is rc_max_rate not used for MFX_RATECONTROL_CBR ? > > > > Hi Michael, > > > > Ivan is on vacation and I did the fix according to his last command : > > > > "This correct for MFX_RATECONTROL_CBR but a bug for > MFX_RATECONTROL_VBR. > > Will fixed later. For any case part of ratecontrol setup should be > > re-designed to support more advanced LA rate contol" > > > > The Intel Documentation states that : > > > > For variable bitrate control, the MaxKbps parameter specifies the > > maximum bitrate at which the encoded data enters the Video Buffering > > Verifier (VBV) buffer. > > > > And for CBR the target bitrate and max bitrate should be equal to > > archive a bitrate that is near a desired target for streaming (no > > peaks etc.) > > In the code there is this: > > } else if (avctx->rc_max_rate == avctx->bit_rate) { > q->param.mfx.RateControlMethod = MFX_RATECONTROL_CBR; > ratecontrol_desc = "constant bitrate (CBR)"; > > assuming thats how CBR is set, the variables are equal and the special > case is not needed am i missing something ?
No, you are right. I missed that. So max_rate and bit_rate have the same value.. means you can ignore my patch or keep it for readability. > > [...] > -- > Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB > > The misfortune of the wise is better than the prosperity of the fool. > -- Epicurus _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel