[ogg-dev] Re: [theora-dev] Re: [Advocacy] Re: [Vorbis-dev] Proposal: An extension to rules all others

Silvia Pfeiffer silviapfeiffer1 at gmail.com
Sun Apr 29 05:01:58 PDT 2007

Hi all,

After years of consideration and motivated by this recent discussion,
I have finally gotten my shit together and written up a what I think
sensible solution both for file extensions and MIME types here:

A few remarks of where I've taken the logic from:

1) 3 letter extensions:
while more than 3 letters would be more readable, many systems are
still restricted on 3 letters and we would narrow our market reach if
we chose any more.

2) .ogg for more than Ogg Vorbis:
while much of the .ogg files are indeed Ogg Vorbis, there are enough
examples in existence where these are Ogg Flac or Ogg Theora/Vorbis.
Also, RFC 3534 specifies .ogg to be used for anything in Ogg and
application/ogg to be used for this, so we as a community have
previously agreed to this.

3) generic oga and ogv extensions:
rather than specifying an extension per codec inside a container, it
makes sense to classify files according to application - i.e. use this
ogg in an audio app - and this in a video app. The application can
then undertake to identify exactly what codecs such files contain and
load the right codec library for decoding. This just enables the right
application to be started in the first place. And it also enables
newer codecs to be brought in later, such as ghost and dirac.

4) ogm:
let's leave that to xvid+vorbis and not confuse the world further.

5) flac:
I'm still slightly confused about flac and whether audio/flac is
already reserved for flac in its native encapsulation format, or
whether it would be flac without container as is needed for streaming
apps. Could somebody please enlighten us here and suggest a solution
for the mime type if this is the case?

Let's discuss some more, but also get to a vote on this on irc or on
the Xiph Board, so we can solve this problem and help the community to
move on.


More information about the ogg-dev mailing list