[FFmpeg-devel] Fw: [foms] Paper submissions to LCA
Fri Jul 17 04:15:14 CEST 2009
On Thu, Jul 16, 2009 at 05:13:55PM -0700, Jason Garrett-Glaser wrote:
> > This is unfortunately the opposite of what is needed to do part of the
> > decoding on a DSP or other coprocessor.
> We have CONFIG_SMALL for that. This isn't an issue.
> >> 2. ?Write paranoid-schizophrenic entropy decoder; separate load_bits
> >> and get_bits into two functions and only call load_bits when one knows
> >> that the bit buffer needs to be reloaded.
> > Isn't this what some of the bitstream readers already do?
> Not that I know of. get_bits is a single function; an example of
> CoreAVC style would be as follows:
> load_bits(); /* We know we have at least 16 bits of data in buffer,
> for example */
> a=get_vlc(blah blah); /* The max size of this VLC is 5 bits. */
> c=get_vlc(blah blah); /* the max size of this VLC is 7 bits. */
> load_bits(); /* We have to reload the buffer now. */
you want to look at OPEN_READER() UPDATE_CACHE(), ...
or to say it differently, your "2." is already done for many codecs
h264 isnt amongth them as noone did it yet ...
> >> 7. ?Template everything you can get your hands on. ?Motion
> >> compensation functions should be templated for weighted pred, implicit
> >> weighted pred, bipred, non-bipred, etc. ?Decoding functions should be
> >> templated based on frametype (I, P, B).
I disagree about "Template everything you can get your hands on"
rather it should be limited to what is actually faster because
spliting things up like that means exponential code growth, which is
not exactly desireable
Its like rate distortion optim, minimize decoding time + C*size :)
... if only gcc managed to understand that instead of their insane
hundread inlining thresholds and stuff
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
Freedom in capitalist society always remains about the same as it was in
ancient Greek republics: Freedom for slave owners. -- Vladimir Lenin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 189 bytes
Desc: Digital signature
More information about the ffmpeg-devel