Changes

Jump to: navigation, search

MIME Types and File Extensions

786 bytes added, 00:06, 20 March 2010
m
Codec MIME types
STATUS: final editing before being turned into an official Xiph recommendation Work on RFCs and work on rfcs will start tools is in process to reflect these policies. More details are [http://wiki.xiph.org/index.php/MIMETypesCodecs here], which also include a specification of the codecs parameter of the MIME tyes. Use the correct file extensions straight away.
DISCLAIMER: currently, only application/ogg is a , video/ogg, audio/ogg and audio/vorbis are registered mimetypeMIME types. Registration for the others will need to be undertaken. In the meantimeDuring this process, use of the "x-" mimetype is recommendedversions of these unregistered MIME types may be used.
IMPLEMENTATION recommendations and patches: see [[MIME-Migration]].
* 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 MUST contain a [[Skeleton]] track to identify all containing logical bitstreams
* apps that identify a logical bitstream which they cannot decode SHOULD ignore it but MAY still decode the ones they can
* thus, e.g. an annodex file can gracefully degrade to .ogx if an app cannot decode [[CMML]] and/or [[Skeleton]]
 == .oga - audio* USE: application/ogg == * Ogg Audio Profile (audio in Ogg container)* apps supporting .oga, .ogv SHOULD support decoding from muxed Ogg streams* covers e.g. [[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 codecshas been registered, from Ogg Vorbis I files (traditional .ogg) which may not contain more than one logical bitstream.so can be used immediately
== .ogv - video/ogg ==
* covers e.g. [[Theora]], Theora + Vorbis, Theora + Speex, Theora + FLAC, [[Dirac]] + Vorbis, [[OggMNG|MNG]] + FLAC, [[OggUVS]] inside Ogg
* This list is not exhaustive (for example, [[Dirac]] + FLAC is acceptable too)
* May SHOULD contain Ogg a Skeleton track and/or MAY contain a CMML logical bitstreamsbitstream.
== .oga - audio/ogg == * Ogg Audio Profile (audio in Ogg container)* Applications supporting .oga, .ogv SHOULD support decoding from muxed Ogg streams* Covers Ogg [[FLAC]], [[Ghost]], and [[OggPCM]] * Although they share the same MIME type, Vorbis and Speex use different file extensions.* SHOULD contain a Skeleton logical bitstream.* Vorbis and Speex may use .oga, but it is not the prefered method of distributing these files because of backwards-compatibility issues. == .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 .ogvrespectively
* 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 supportedhence it is kept for backwards-compatibility
== .spx - audio/ogg+speex ==
* Ogg Speex Profile
* .spx has traditionally been used for Ogg Speex files within Ogg and should be considered for backwards-compatibility
== .flac - applicationaudio/flac ==
* flac FLAC in native encapsulation format
== .anx - application/annodex ==
== .axa - audio/annodex ==
* Profile for audio in annodex Annodex
* covers e.g. [[Vorbis]], [[Speex]], [[FLAC]], [[Ghost]], [[OggPCM]] inside Ogg with Skeleton and CMML
== .axv - video/annodex ==
* Profile for video in annodex Annodex
* covers e.g. [[Theora]], Theora + Vorbis, Theora + Speex, Theora + FLAC, [[Dirac]] + Vorbis, [[OggMNG|MNG]] + FLAC, [[OggUVS]] inside Ogg with Skeleton and CMML
== .xspf - application/xspf+xml ==
 
* Profile for XSPF
* Covers [[XSPF]], while being used through XML
* Does not cover [[JSPF]], which is XSPF but on JSON
 
== Ogg Kate files - application/kate ==
 
* Binary representation of Kate encapsulated in Ogg
* may have a skeleton
* can be used to identify the mime type of the track itself (e.g. in skeleton)
* uses .ogx extension when in a file by itself
* is subdued by the dominant mime type if in a audio or video file to become audio/ogg or video/ogg
== Codec MIME types ==
Codecs need their own MIME types for streaming in RTP 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 and in native container, but extra FLAC Ogg header (?)
* text/cmml for CMML without container
* application/kate for the textual representation of Kate (.kate files)

Navigation menu