[ogg-dev] OggYUV

Arc arc at Xiph.org
Mon Nov 7 23:30:08 PST 2005


On Mon, Nov 07, 2005 at 11:11:16PM -0800, Ralph Giles wrote:
> On Mon, Nov 07, 2005 at 10:22:50PM -0800, Arc wrote:
> 
> > In response to (and with the help of) John Koleszar I put together an early 
> > draft of OggYUV.. or rather, a list of header fields for it.
> 
> Why not just wrap yuv4mpeg, one frame per packet?

Honestly, that's what it'll probobally end up being functionally.  Practically, 
we need something a bit more flexible, as yuv4mpeg is 4:2:0 only, and we need a 
wider variety of colorspaces.

 
> It does suffer from not being clear on colourspace or sampling issues, 

It's not a lack of clarity, it's a lack of flexibility.  AFAIK, based on all 
I've read and seen in implementation, it's *ONLY* 4:2:0, and while you could use 
any colorspace theoretically, it makes sense to put this in the stream header.

I may be wrong, but even if it's more flexible than that, it certainly doesn't 
support the myriad of different formats we need, or will need in the future.


> but it is dead simple.

Well, it could be more simple.. ie, instead of using space-delimited ascii 
numbers, we'll use binary numbers which the Ogg bitpacker can easily extract.

Personally, I think that http://wiki.xiph.org/index.php/OggPCM#Format is pretty 
damned simple - several orders of magnitude more so than RIFF .wav files.  

I think that, giving OggYUV a similar format to OggPCM, a Python script using 
pyogg2 could be written to convert yuv4mpeg2 to OggYUV in under 100 lines.

-- 

The recognition of individual possibility,
 to allow each to be what she and he can be,
  rests inherently upon the availability of knowledge;
 The perpetuation of ignorance is the beginning of slavery.

from "Die Gedanken Sind Frei": Free Software and the Struggle for Free Thought
 by Eben Moglen, General council of the Free Software Foundation


More information about the ogg-dev mailing list