[theora-dev] Re: Decoder accessing uninitialized variable... Re: [theora-dev]Using Theora in games?

David Kuehling dvdkhlng at gmx.de
Thu Feb 26 10:30:44 PST 2004



>>>>> "Timothy" == Timothy B Terriberry <tterribe at vt.edu> writes:

> There was some call for an API which lets the application specify the
> buffer to decode into. This allows decoding directly into video
> memory, possibly writing only the updated blocks. The difficulty with
> this is Theora needs to keep its own copy of each decoded frame with
> 16 pixels of padding on each side (to handle unrestricted motion
> vectors), from which lots of reads are performed during motion
> compensation (reads from video memory being slow). It might be
> possible to write post-processing output directly to an
> application-specified buffer, but I haven't really investigated the PP
> code yet (which I need to do; there are parameters in there that are
> quantizer-dependent, and thus should be in the stream headers but
> currently are not).

If anybody implemented such an API, would it be possible, to add support
for stripe decoding?  For example, by using callbacks, that notify the
caller every time, a complete (say, 32 pixel) row is complete.  Using
such an API, the caller could take those data and do processing
(scaling, YUV conversions, drawing to screen etc.), while the data is
still in cache.  This gives *huge* performance benefits on current CPUs.

This may be one reason why MPlayer and it's post-process filters are so
fast.  Some MPlayer video codecs and/or filters might be a good
reference as to how this could be done efficiently.

David

-- 
GnuPG public key: http://user.cs.tu-berlin.de/~dvdkhlng/dk.gpg
Fingerprint: B17A DC95 D293 657B 4205  D016 7DEF 5323 C174 7D40

--- >8 ----
List archives:  http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'theora-dev-request at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.




More information about the Theora-dev mailing list