[XviD-devel] Hints in API

Edouard Gomez xvid-devel@xvid.org
Sun, 29 Dec 2002 23:18:29 +0100


--yrj/dFKFPuw6o+aM
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Christoph Lampert (chl@math.uni-bonn.de) wrote:
> Hi,
>=20
> sorry, I was and am very busy for a couple of weeks, but I just tried to
> update my test-apps and:
>=20
>=20
> Why is the "HINTINFO hint" in XVID_ENC_FRAME not a "HINTINFO *hint" ?
>=20
> I can really see it as a regular part of the frame-structure, rather as an
> extension.=20

It's now a long time i'm trying to fix Hints in 0.9.0 and i don't find
the bug. I said i was able to reproduce the bug, but i could not do it
again :-(.

Anyway, this very long debug session proved me Hints are not that good
for encoding. They speed up things but they decrease quality a lot. As
XviD uses quant=3D2 for 1st pass and 2nd pass uses generally quants>=3D3 the
diffrence between 1st pass and 2nd pass is too high. And motion vectors
are simply not adapted to 2nd pass target bitrate.
=20
Core uses to have a threshold to control penalty for MV, but when using
Hints this penalty is no more, and most of vectors are simply firing
target bitrate which leads to high blocky-ugly images when playing with
bitrates under the 650kbps limit (compared to the ~2000k during 1st
pass)

I know it's bit late to change that in 0.9.x series, but Hints are not a
feature, they are a BUG. They are to manage in a nice way in core. I'm
in favour of removing them in dev-api-3. I would like other devs to give
me their impression about that.

PS: I could not find the "hint bug" in 0.9.x :-( even if i passed  4
days looking all around the code, testing more than 50
sequences... really i'm clueless about its cause.

--=20
Edouard Gomez

--yrj/dFKFPuw6o+aM
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQE+D3S1R5dTYz5sWMcRAlNOAJ4tq2ZlGK05PRHMtWko0tVYqmtN2ACfcgur
BkGV736bx3v6BXINWtPJin0=
=rmpz
-----END PGP SIGNATURE-----

--yrj/dFKFPuw6o+aM--