Jump to: navigation, search

What is Ogg

Ogg is an open standard for a free container format for digital multimedia, unrestricted by software patents and designed for efficient streaming and manipulation. Ogg is maintained by the Xiph.Org Foundation.

The name ‘Ogg’ refers to the file format which can multiplex a number of separate independent free and open source codecs for audio, video, text (such as subtitles), and metadata. The term ‘Ogg’ is often used to refer to audio file format Ogg Vorbis, that is, Vorbis-encoded audio in the Ogg container. Other prominent Xiph codecs that are often encapsulated in Ogg are the video codec Theora, and the human speech audio compression format Speex.

Previously, the .ogg file extension was used for any content distributed within Ogg, but as of 2007, the Xiph.Org Foundation requests that .ogg be used only for Vorbis due to backwards-compatibility concerns. The Xiph.Org Foundation decided to create a new set of file extensions and media types to describe different types of content such as .oga for audio, .ogv for video (including Theora), and .ogx for applications.1


Because the format is free, Ogg's various codecs have been incorporated into a number of different free and proprietary media players, both commercial and non-commercial, as well as portable media players from different manufacturers.

This article contains content from a Wikipedia article which is licensed under the GNU Free Documentation License.

Why OGG?

OGG is free (as in beer) and OGG is free (as in speech). This fits in with the OLPC's goals far better than the proprietary and sometimes costly .wma or .mp3. OGG is also highly compressible, meaning you can achieve high quality at the same or smaller filesizes than other codexs. OGG is also very well supported in Gstreamer which most of the media on the XO is ran by.

What Flavour? Theora, Vorbis, FLAC, Speex ...

OGG is a container format, there are various types of media that can be stored inside of a .ogg file using various codexs. Video is encoded in Theora, general audio (music) is encoded in Vorbis, human speech is recorded in Speex and lossless audio is encoded in FLAC.


Theora is a video codec that is commonly stored in .ogg, or .ogv formats. It is the preferred form of video on the XO. See the Theora page to learn how to encode video for the OLPC and suggestions for quality.

Usage Cases

Colingo encodes their video in Theora.

Dailymotion encodes too their video in Theora.


Vorbis is a standard lossy audio codec, similar in usage to mp3. Comparing mp3 to ogg, ogg can attain smaller file sizes at the same level of quality. All music on the XO will likely be in Ogg-Vorbis format. Files can be stored in .ogg and .oga formats.


The Speex is a little used codec (outside of the OLPC) that is optimized for voice recording. It is possible to shrink voice recordings to a significant fraction of their original size by using this codec.

Usage Cases

In particular, the ability to record OGG/Speex files would allow the OLPC to be used for taking voice notes of classroom sessions. These can be used in two ways. One is for the student to review again at home if they have had difficulty in understanding it all the first time. The second is to send these files to students who were unable to participate in the classroom. These may be students who are ill or they may be students who live too far from the class to travel there daily. In such situations there are generally adults who are able to travel back and forth on a daily basis using some means of transportation (animal-drawn cart, bicycle, scooter).

Speex recording would also allow students to create their own audiobooks]. Speex would also be an ideal vocal track for stop motion Animation.


FLAC is a lossless audio codec, comparable to wav. It is known for it's exceptional auditory quality, but comes at the price of high file sizes. Because of relatively low quality of the output speakers, and because of space restraints, it is unlikely that the FLAC format will be used much on the OLPC.

Mime Types

Right now the File types on the XO (pre Update.1) are a little fuzzy. Vorbis-.ogg's work but Speex-.ogg's and FLAC-.ogg's do not. It is unknown if Speex-.spx works ATM. This SHOULD work before G1G1 users get their XO's

See Xiph's site for more details on mime types


The OLPC project needs to leverage these travelers, following the example of the Motoman project, to distribute content more widely and OGG recording capability will help in that effort.

Links to information on loading and playing OGG media (especially audio) from within activities (Python) would be very helpful.