[XviD-devel] [TODOLIST ITEM] Bit rate controler module

Michael Militzer xvid-devel@xvid.org
Thu, 12 Dec 2002 18:08:27 +0100


Hi,

----- Original Message -----
From: "Marc FD" <marcfd@free.fr>
To: <xvid-devel@xvid.org>
Sent: Tuesday, December 10, 2002 7:10 PM
Subject: Re: [XviD-devel] [TODOLIST ITEM] Bit rate controler module

[...]

> >before writing the "universal killer" RC.
>
> it's just that RC is one of the most powerfull
> things in video encoding, and is cheap in amost
> all codecs. but remember SBC helped to (sometimes) do
> magic with a crappy encoder like DivX ;-).
> (of course SBC is now crap. it's just an exemple)
>

yes, that's true. RC has a high impact on visual quality and maybe we didn't
spent enough time on it (well, at least there's still room for
improvements). However I don't think that nandub is an example how to do it
right. Furthermore I think that XVID has already become far too "nandubish".
Initial XVID versions had a simple 2pass RC and quality was ok. Today the
internal 2pass RC code is very complex and hard to understand (after several
nandub-like options have been implemented) while the quality has not really
improved (well not due to better ratecontrol) but the user has more freedoms
to ruin his encode...

Our current 2pass rate controller depends basically on two assumptions: a)
the first pass constant quant 2 encoding creates a video of constant quality
and b) the relation between quantizer and bitrate is linear. Unfortunately
both these assumptions are wrong. Therefore I think we'd need an algorithm
which is somewhat more "scientific" to achieve better results, however since
perceived video quality is something very subjective metric it's very hard
to create an algorithm which gives reliable results.

bye,
Michael