[Ffmpeg-devel] FLAC encoder

Michael Niedermayer michaelni
Sun May 28 20:16:18 CEST 2006


Hi

On Sun, May 28, 2006 at 10:54:06AM -0400, Justin Ruggles wrote:
> Michael Niedermayer wrote:
> > Hi
> > 
> > On Sun, May 28, 2006 at 12:32:36AM -0400, Justin Ruggles wrote:
> > 
> >>Here is an updated version of the encoder.
> >>http://home.earthlink.net/~jruggle/flake/flake-01.tar.bz2
> >>
> >>What I did:
> >>
> >>Instead of doing brute-force bit counts and gradient search for the
> >>optimal rice parameters, I used the log2(mean_residual_value).  This is
> >>not 100% optimal for compression, but it's close, and it is much faster.
> >>
> >> First, the mean is calculated for each partition on the highest order
> >>level. Then, each lower level mean is calculated by averaging each pair
> >>of partitions from the level above.  In addition to calculating k, the
> >>means are also used to estimate bit count.
> > 
> > 
> > the same summing (of the most significant bits instead of all) from the
> > previous 2 higher order partitions can be done with the exact method too
> > (it was the simple but slower alternative i suggested)
> 
> I think I see what you're suggesting now.  I could more quickly
> calculate the sums for each k by doing partial sums for each of the 32
> bit positions then getting the bit count for each k by summing all
> partial sums for position k and above.  Since my updated version
> estimates k, this wouldn't really help, but when I add the brute-force
> method back in, it will speed things up.  I am understanding this right?

i think yes

[...]

-- 
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