MIME Types and File Extensions

From XiphWiki
Revision as of 05:10, 16 May 2007 by Silvia (talk | contribs) (reflecting outcome of today's xiph meeting)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

STATUS: final editing before being turned into an official Xiph recommendation and work on rfcs will start to reflect these policies


.ogx - application/ogg

  • Ogg Multiplex Profile (anything in Ogg)
  • can contain any logical bitstreams multiplexed together in an ogg container
  • will replace the .ogg extension from RFC 3534 http://www.ietf.org/rfc/rfc3534.txt
  • random multitrack files SHOULD contain a skeleton track to identify all containing logical bitstreams
  • apps that identify a logical bitstream which they cannot decode SHOULD drop but MAY still decode the ones they can

.oga - audio/ogg

  • Ogg Audio Profile (audio in Ogg container)
  • apps supporting .oga, .ogv SHOULD support decoding from muxed Ogg streams
  • covers Vorbis, Speex, FLAC, Ghost, OggPCM inside Ogg, though Ogg Vorbis and Ogg Speex also have special profiles
  • May contain Ogg Skeleton and/or CMML logical bitstreams.

RATIONALE: This distinguishes audio-only files, using any of the Xiph audio codecs, from Ogg Vorbis I files (traditional .ogg) which may not contain more than one logical bitstream.

.ogv - video/ogg

  • Ogg Video Profile (a/v in Ogg container)
  • apps supporting .oga, .ogv SHOULD support decoding from muxed Ogg streams
  • covers Theora, Theora + Vorbis, Theora + Speex, Theora + FLAC, Dirac + Vorbis, MNG + FLAC, OggUVS omsode Ogg
  • May contain Ogg Skeleton and/or CMML logical bitstreams.

.ogg - audio/ogg+vorbis

  • Ogg Vorbis I Profile
  • .ogg applies now for Ogg Vorbis I files only
  • .ogg has more recently also been used for Ogg FLAC and for Ogg Theora, too - these uses are deprecated now in favor of .oga and .ogv
  • has been defined in RFC 3534 http://www.ietf.org/rfc/rfc3534.txt for application/ogg, so rfc 3534 will be re-defined

RATIONALE: .ogg has traditionally been used for Ogg Vorbis I files, in particular in HW players, which needs to continue to be supported

.spx - audio/ogg+speex

  • Ogg Speex Profile
  • .spx has traditionally been used for Ogg Speex files and should be considered for backwards-compatibility

.flac - application/flac

  • flac in native encapsulation format


Codec MIME types

Codecs need their own MIME types for streaming and to be used in multitrack ogg files using skeleton:

  • audio/vorbis for Vorbis without container
  • video/theora for Theora without container
  • audio/speex for Speex without container
  • audio/flac for FLAC without container, but extra FLAC Ogg header (?)