[theora-dev] Re: Ogg Internet Drafts - create application/ogg-vorbis, application/ogg-tarkin, etc.

David Wheeler dwheeler at ida.org
Thu Jan 2 07:28:41 PST 2003

Silvia.Pfeiffer at csiro.au wrote:

> Dear David,
> I hope it's ok to forward your email to the developer lists.

<p>ABSOLUTELY! I'm sorry I didn't make that clear.  Indeed, please
get as much buy-in as you can.  Please post this email too.

>I have not
> seen a comprehensive scheme for MIME type naming and file extensions for
> ogg files yet - please anybody put me in the picture if there is.

<p>I don't think people have really worried that hard about it -- they've
been more worried about getting the algorithms and basic implementation
working.  So NOW is the time to do so.

> However, I have seen application/x-ogg used for ogg-vorbis files, which
> is according to MIME type registration rules an unregistered and
> experimental MIME type (see RFC2048) and seems to have worked so far for
> ogg-based files. I understand your issues on having application/ogg as
> an all-encompassing MIME type, as ogg by itself cannot determine the
> further type of content included. Therefore your idea about having more
> specific MIME types makes sense.

<p>Great.  I've read RFC 2048 (a while ago), so I remember the x-
convention.  But when you register for
a "real" name, it's exactly the right time to think about the future
to determine what the "true" name should be.

So, it makes sense that we're having this conversation NOW, and it's
appropriate to do so.  RFC 2046 (http://www.ietf.org/rfc/rfc2046.txt)
seems to also have some useful recommendations.

<p><p>> Yet, I don't believe that application/ogg-tarkin or
> application/ogg-vorbis should be chosen, as "application/" to me flags
> that the content of the file can only be determined by an application
> that can read this specific type of file. In my opinion, vorbis should
> be audio/ogg-vorbis because vorbis itself is an encoding format that
> makes sense in containers only, such as ogg or rtp.

<p>That's a good point.  Okay, "audio/ogg-vorbis" sounds perfect for Ogg Vorbis.
The issue is that the user should be able to figure out what program to
run, given only the MIME type - "ogg" doesn't give them enough information,
but "ogg-vorbis" does.  Since ".ogg" is typically Ogg Vorbis, it's okay
that it be the default filetype.  If that seems to be a problem, then
the community needs to define a new filetype extension pronto and
propogate that (".vor", anyone?).

This is especially important since there are other audio encodings in Ogg.
You may as well plan for "audio/ogg-speex", for example.

> Tarkin on the other
> hand is a combination of vorbis and VP3 plus a media mapping onto ogg
> such that video/tarkin might make sense, though would not be logical to
> the outside world.

<p>I think it _is_ reasonable to say that if a there is a media player
for a video feed (like Tarkin), it must also support a "default"
audio encoding (like Vorbis).  Thus, for Tarkin, say:


with the requirement that any Tarkin viewer must also be prepared for
any embedded Vorbis audio data.  That way, the video & audio streams can
be synchronized.  A Tarkin viewer may not have a speaker, of course, but
that's a different problem :-).

RFC 2046 encourages audio & video streams be placed in separate
MIME containers.  That's more flexible, but that seems impractical for
most typical uses. RFC 2046 recognizes this, and permits it. Section 4.4 says:
  Note that although in general this document strongly discourages the
  mixing of multiple media in a single body, it is recognized that many
  so-called video formats include a representation for synchronized
  audio, and this [is ex]plicitly permitted for subtypes of "video".

You could define other MIME types if you wanted to combine other codecs
into a single stream, e.g., "video/ogg-tarkin-speex".  That way, the
simple "video/ogg-tarkin" can handle all things (interoperable!), while
specialized applications like videophones can use funky MIME types to
indicate exactly what they're sending.

<p>> As for file extensions - I've seen theora files also end in .ogg .

<p>No doubt because no one has suggested a specific file extension.
SO.. the community should define one.

I think that if Xiph declared the official file endings for the various
codecs, everyone would quickly get on board, esp. for the formats other
than Ogg Vorbis (since they are not yet so widely deployed).

In short, I think the community needs to identify official MIME types and
standard file extensions for each of the Ogg codecs, for use in themselves,
and propose them to the IETF.  If Xiph (particularly Monty) and the IETF
IANA agree on them, I think that everyone else will happily use them.

I would suggest, in fact, that you register _all_ the Ogg codecs
(current Xiph projects) _NOW_, so that everyone will have an easier time
of things.  If the IETF doesn't want to register some of the "in work"
codecs, at least declare one in-house like "video/x-ogg-tarkin" so that
the transition plan and proposal for the IETF is clear.

<p>--- David A. Wheeler

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