Theora
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.
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.
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.
* Alpha One was released on
September 25,
2002* Alpha Two was released half on
December 16 and half on
December 27,
2002* Alpha Three was released on
March 20,
2004* Alpha Four was released on
December 15,
2004* Alpha Five was released on
August 20 2005* Alpha Six was released on
May 30 2006* Alpha Seven was released on
June 20 2006libtheora is released under the terms of a
BSD-style license.
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 [https://xiph.helixcommunity.org/ 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 [https://helixcommunity.org/project/showfiles.php?group_id=7 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.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 [
1] 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.
CVS versions of the
Cinelerra non-linear video editing system support Theora, as of August 2005.
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 Wikipedia:Media help (Ogg)*
Cortado a
Java based
applet (http://www.fluendo.com/products.php?product=applet)
*
FFmpeg (own implementation)
*
illiminable Ogg Directshow Filters for Speex, Vorbis, Theora and FLAC enables
DirectShow based players, such as
Media Player Classic and
Windows Media Player, to play Theora.
*
RadLight Theora DirectShow filter from the
RadLight Open Source project enables Microsoft Windows Media Player to play theora videos.
*
MPlayer*
RealPlayer (requires these [https://helixcommunity.org/project/showfiles.php?group_id=7 codecs] for a non-helix player based RealPlayer)
*
Helix Player*
VLC (native support)
*
xine and all libxine-based players like
Kaffeine*
Totem*
QuickTime 7 (Requires official (and experimental)
components for playback on Windows and Macintosh systems)
*
Visonair.tv PlayerThe following streaming media servers are capable of streaming Theora video:
*
Icecast*
Flumotion*
FreeCast, a
Java peer-to-peer streaming solution
*
Video editing software*
Dirac*
Theora.org*
Building an Ogg Theora camera using an FPGA and embedded Linux*
ffmpeg2theora*
v2vwiki's list of Theora players*
List of Theora videos — downloadable videos encoded with Theora
*
Why Ogg Theora Matter for Internet TV