[Ffmpeg-devel] Trellis Quantization Applied To (A)DPCM

Michael Niedermayer michaelni
Sun Jun 4 13:23:45 CEST 2006


On Sat, Jun 03, 2006 at 09:45:36PM -0700, Loren Merritt wrote:
> On Sat, 3 Jun 2006, Loren Merritt wrote:
> >On Sat, 3 Jun 2006, Mike Melanson wrote:
> >
> >>Hi,
> >>	I see that Loren took Michael's suggestion seriously and applied 
> >>Trellis quantization to the ADPCM encoder. This reminds me of discussions 
> >>on MPlayer-devel about optimizing ADPCM decoding with SIMD instructions. 
> >>:)
> >>
> >>	So, can this be applied to, e.g., Creative YUV? I had wanted to 
> >>	write an encoder for that at one point but I sort of got stuck wondering 
> >>about an optimal (quality-wise) method for creating the delta tables.
> >>
> >> http://wiki.multimedia.cx/index.php?title=CYUV
> >
> >Trellis can tell you the optimal sequence of deltas in each line, but 
> >can't determine the optimal table to choose them from.
> >
> >The obvious heuristic would be: count up how many times each delta appears 
> >in the frame, then run K-Means.
> Hmm... my initial implementation doesn't see noticeable gains from K-Means 
> over just using a constant exponential table.

i think that in case of optimally choosing the deltas a less "regular" table
then your constant table would be supperior, the reason why i think so is that
in your constant table many sums of elements are equal which should lead to
fewer "easy reachable" values, for example:

if we have a input of 0 12 3 then that could be encoded with +16,-16 or
+8,-8 with your table if the table where slightly less regular then the
2 cases would be able to reach 2 different final results and that might
lead to a better approximation ...

btw, great work ...


Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

In the past you could go to a library and read, borrow or copy any book
Today you'd get arrested for mere telling someone where the library is

More information about the ffmpeg-devel mailing list