Silvia Pfeiffer
2008-Jun-06 04:08 UTC
[ogg-dev] How Ogg mappings translate into the codecs parameter in Ogg media types
Hi all, I am trying to set up the codecs table in the wiki and we have played a bit with Dirac to find out what existing tools write into the header. The Schroedinger implementation by Fluendo uses (or used to use) "KW-DIRAC" as the identifier in the Ogg header. "BBCD" is the identifier of each of the Dirac data packages. More recently, I read that the Dirac Sequence header will be used as the Ogg BOS packet directly. I'm not sure this is the best solution and I'm not sure this is a final decision either. I believe it has to be sorted out properly and would suggest that until such time we take the Dirac "codecs" specification out of this Internet-Draft. Comments welcome! Cheers, Silvia. On Sat, May 31, 2008 at 2:20 AM, Ivo Emanuel Gon?alves <justivo at gmail.com> wrote:> I received the following comment regarding the table: > >> The table contains a mix of octal and hexadecimal 'escape sequences' >> for non-printable / non-ASCII octets. >> I strongly suggest to only use a single kind of numerical escapes. > > Is this feasible or even desired, or should we leave things as they are? > > For reference, this is how the table looks right now: > > Codec Identifier | Codecs Parameter > ----------------------------------------------------------- > char[5]: 'BBCD\0' | dirac > char[5]: '\177FLAC' | flac > char[7]: '\x80theora' | theora > char[7]: '\x01vorbis' | vorbis > char[8]: 'Speex ' | speex > char[8]: 'OggMIDI\0' | midi > char[8]: 'CMML\0\0\0\0' | cmml > char[8]: '\211PNG\r\n\032\n' | png > char[8]: '\212MNG\r\n\032\n' | mng > char[8]: '\213JNG\r\n\032\n' | jng > char[8]: 'CELT ' | celt > char[8]: 'PCM ' | pcm > char[9]: '\x80kate\0\0\0\0' | kate > char[9]: 'YUV4MPEG2' | yuv4mpeg > > (Don't expect it to look pretty without a monospaced font) > > -Ivo > _______________________________________________ > ogg-dev mailing list > ogg-dev at xiph.org > http://lists.xiph.org/mailman/listinfo/ogg-dev >
Silvia Pfeiffer
2008-Jun-06 05:52 UTC
[ogg-dev] How Ogg mappings translate into the codecs parameter in Ogg media types
Further to this - I am staring at some of the other headers and wondering how some of those fields came together. I particularly see where the "packtype" is used, the number seems to be intentionally different between the codes - apart from kate which just copied the one from Theora. Also, it would be good if we can keep our magic numbers to the first 8 bytes. So, I am wondering: should we remove kate, mng, png, jng, yuv4mpeg from the RFC since they have not officially been agreed on yet or deployed? Instead of putting a "complete" list into the RFC (with some potential bugs), I'd suggest to keep all of these specs in the wiki and work on improving them there. The RFC should just contain the ones that are widely approved and distributed. Comments, anybody? Cheers, Silvia. On Fri, Jun 6, 2008 at 2:08 PM, Silvia Pfeiffer <silviapfeiffer1 at gmail.com> wrote:> Hi all, > > I am trying to set up the codecs table in the wiki and we have played > a bit with Dirac to find out what existing tools write into the > header. > > The Schroedinger implementation by Fluendo uses (or used to use) > "KW-DIRAC" as the identifier in the Ogg header. > "BBCD" is the identifier of each of the Dirac data packages. > > More recently, I read that the Dirac Sequence header will be used as > the Ogg BOS packet directly. > > I'm not sure this is the best solution and I'm not sure this is a > final decision either. > > I believe it has to be sorted out properly and would suggest that > until such time we take the Dirac "codecs" specification out of this > Internet-Draft. > > Comments welcome! > > Cheers, > Silvia. > > > On Sat, May 31, 2008 at 2:20 AM, Ivo Emanuel Gon?alves > <justivo at gmail.com> wrote: >> I received the following comment regarding the table: >> >>> The table contains a mix of octal and hexadecimal 'escape sequences' >>> for non-printable / non-ASCII octets. >>> I strongly suggest to only use a single kind of numerical escapes. >> >> Is this feasible or even desired, or should we leave things as they are? >> >> For reference, this is how the table looks right now: >> >> Codec Identifier | Codecs Parameter >> ----------------------------------------------------------- >> char[5]: 'BBCD\0' | dirac >> char[5]: '\177FLAC' | flac >> char[7]: '\x80theora' | theora >> char[7]: '\x01vorbis' | vorbis >> char[8]: 'Speex ' | speex >> char[8]: 'OggMIDI\0' | midi >> char[8]: 'CMML\0\0\0\0' | cmml >> char[8]: '\211PNG\r\n\032\n' | png >> char[8]: '\212MNG\r\n\032\n' | mng >> char[8]: '\213JNG\r\n\032\n' | jng >> char[8]: 'CELT ' | celt >> char[8]: 'PCM ' | pcm >> char[9]: '\x80kate\0\0\0\0' | kate >> char[9]: 'YUV4MPEG2' | yuv4mpeg >> >> (Don't expect it to look pretty without a monospaced font) >> >> -Ivo >> _______________________________________________ >> ogg-dev mailing list >> ogg-dev at xiph.org >> http://lists.xiph.org/mailman/listinfo/ogg-dev >> >
Ralph Giles
2008-Jun-07 17:11 UTC
[ogg-dev] How Ogg mappings translate into the codecs parameter in Ogg media types
On Thu, Jun 5, 2008 at 9:08 PM, Silvia Pfeiffer <silviapfeiffer1 at gmail.com> wrote:> The Schroedinger implementation by Fluendo uses (or used to use) > "KW-DIRAC" as the identifier in the Ogg header. > "BBCD" is the identifier of each of the Dirac data packages. > > More recently, I read that the Dirac Sequence header will be used as > the Ogg BOS packet directly.That's all correct, and as far as I know it's the final decision. What's the uncertainty? -r
Silvia Pfeiffer
2008-Jun-07 22:16 UTC
[ogg-dev] How Ogg mappings translate into the codecs parameter in Ogg media types
On Sun, Jun 8, 2008 at 3:11 AM, Ralph Giles <giles at xiph.org> wrote:> On Thu, Jun 5, 2008 at 9:08 PM, Silvia Pfeiffer > <silviapfeiffer1 at gmail.com> wrote: > >> The Schroedinger implementation by Fluendo uses (or used to use) >> "KW-DIRAC" as the identifier in the Ogg header. >> "BBCD" is the identifier of each of the Dirac data packages. >> >> More recently, I read that the Dirac Sequence header will be used as >> the Ogg BOS packet directly. > > That's all correct, and as far as I know it's the final decision. What's > the uncertainty?I wasn't sure that was all finalized. I found the only mention of it in that email thread (http://lists.xiph.org/pipermail/ogg-dev/2008-February/000891.html), which I wasn't sure was final. Happy to have that confirmed, thanks. We might want to put it somewhere "official" and make a diagram like these at http://svn.annodex.net/liboggz/trunk/src/liboggz/oggz_auto.h for the header. I also wanted to extract the position of the "version" field. From the pdf at http://dirac.sourceforge.net/specification.html and from the code at https://core.fluendo.com/carid/svn/trunk/schroedinger/tools/dump_packets.c, I am assuming it is at char[4,2] - major version & char[6,2] - minor version, but please correct me if I have misread. This info should go into http://wiki.xiph.org/index.php/MIMETypesCodecs. Cheers, Silvia.