Theora is a video codec being developed by the Xiph.org Foundation as part of their Ogg project. Based upon On2 Technologies' VP3 codec, and christened by On2 as the successor in VP3's lineage, Theora is targeted at competing with MPEG-4 video (e.g., H.264, XviD and DivX), RealVideo, Windows Media Video, and similar lower-bitrate video compression schemes.
While VP3 is patented technology, On2 has irrevocably given royalty-free license of the VP3 patents to everyone, letting anyone use Theora and other VP3-derived codecs for any purpose.
In the Ogg multimedia framework, Theora provides a video layer, while Vorbis usually acts as the audio layer (Speex and FLAC can also act as audio layers).
Theora is named for Theora Jones, Edison Carter's Controller on the Max Headroom television program.
Technical details
Theora is a
lossy video compression method derived from
On2's
VP3 Codec. The compressed video can be stored in any suitable
container format. At the time of writing (June
2006), Theora video is generally included in
Ogg container format. It is frequently paired with
Vorbis audio.
The combination of the Ogg container format, Theora video and Vorbis audio allows for a completely open, royalty-free multimedia format. Thus, it is of great interest to the Free Software and Free Culture movements. Previous multimedia formats (e.g. DivX video and MP3 audio) were patented, meaning that Free Software players implementing them were legally vulnerable, because paying license fees for software freely available for everyone to use anywhere for anything is often hard, if not impossible to do.
Development timeline
libtheora (the implementation of Theora made by the
Xiph.org Foundation) is still in developmental stages with Xiph.org having made seven
alpha releases thus far.
libtheora is released under the terms of a BSD-style license.
History
- September 6, 2001 : On2 releases the source code to their libraries for VP3 under the terms of the VP3.2 Public License.
- March 27, 2002 : On2's founder and CTO, Dan Miller, sends an email to vorbis-dev announcing On2's interest in collaborating with the Xiph.org Foundation and relicensing VP3 under the terms of the LGPL.
- June 24, 2002 : On2 and the Xiph.org Foundation announce their alliance to develop Ogg Theora: the integration of VP3 with the Ogg framework and Vorbis. See also On2's press release.
- September 25, 2002 : Theora Alpha One is released. See also On2's press release.
- December 16 and December 27, 2002 : Theora Alpha Two is released in two stages.
- May 18, 2003 : Published VP3 legacy codec binaries.
- June 9, 2003 : Theora reference implementation Alpha Two is released.
- January 23, 2004 : Milestone 2 release of the RealNetworks Helix player includes preliminary support for Ogg Theora. Milestone 3, scheduled release in April 2004, is planned to provide complete support. See also the status at helixcommunity.org
- March 20, 2004 : Theora reference implementation Alpha 3 is released.
- May 10, 2004 : Theora/Vorbis plug-in version 0.2 for the Windows version of RealPlayer is released. Download it from helixcommunity.org.
- June 1, 2004 : The Theora bitstream format has been frozen. It has not been changed from Alpha 3. So it is guaranteed that all files encoded using Alpha 3 (or any later version) will be supported by future decoders.
- December 14 2004 : Alpha 4 released.
- August 20 2005 : Alpha 5 released.
- May 30 2006 : Alpha 6 released.
- June 20 2006 : Alpha 7 released.
Encoding Theora videos
The libtheora library, at
theora.org, contains the reference implementation of both encoder and decoder, called libtheora. At the moment, Xiph.org developers have not provided stand-alone programs to actually encode the video.
There are several stand-alone programs to encode video, many of which are based on libtheora:
- ffmpeg2theora uses FFmpeg to decode video and libtheora to encode it. This is currently the most functional Theora encoder, and can be used for both creating stand-alone video files and to produce streaming video.
- VLC is able to encode Theora video, from any of the video sources it supports, and also stream it.
- The open-source 'Video DJ' program FreeJ can encode and stream ogg/theora. Video comes from one or more different video or image files/sources while audio is encoded from the soundcard.
- The GNOME video editor Diva encodes to Ogg Theora.
- The open-source Video Editing program LiVES can also encode to ogg theora at different quality settings.
- There is also currently a beta-version of Thoggen * for Linux, a GTK+ and GStreamer based DVD-backup utility, which encodes to Ogg (Vorbis audio, Theora video).
Also, several media frameworks have support for Theora.
- The open-source ffdshow audio/video decoder is capable of encoding Theora videos using its Video for Windows (VFW) multi-codec interface within popular AVI editing programs such as VirtualDub. It supports both encoding and decoding Theora video streams and uses Theora's alpha 4 libraries. However, many of the more refined features of Theora aren't available to the user in ffdshow's interface.
- The GStreamer framework has support for Theora.
Editing Theora videos
CVS versions of the
Cinelerra non-linear video editing system support Theora, as of August 2005.
Playing Theora videos
If you want to
find videos to test out your new theora-enabled player, see the
Theora test suite.
List of Theora video players
- See also Media help (Ogg)
Streaming Theora
The following streaming media servers are capable of streaming Theora video:
See also
External links
Video codecs
Theora | Theora | Theora | Theora | Theora | Theora | Theora | Theora | Theora | Theora | Theora | Theora | Ogg Theora