Theora


Theora
Filename extension .ogv
Internet media type video/ogg
Developed by Xiph.org
Type of format Video codec
Contained by Ogg
Extended from VP3
Standard(s) Specification
libtheora
Developer(s) Xiph.org
Stable release 1.0 / 2008-11-3; 7 months ago[1]
Preview release 1.1alpha2 / 2009-5-26; 40 days ago[2]
Operating system Unix-like, Microsoft Windows
License 3-clause BSD
Website theora.org

Theora is an open and royalty-free lossy video compression technology being developed by the Xiph.Org Foundation as part of their Ogg project. Based upon On2 Technologies' VP3 codec, Theora competes with MPEG-4, WMV, and similar low-bitrate video compression schemes.

Theora is named for Theora Jones, Edison Carter's Controller on the Max Headroom television program.

Contents

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. Theora video is generally included in Ogg container format and is frequently paired with Vorbis format audio streams.

The combination of the Ogg container format, Theora-encoded video, and Vorbis-encoded audio allows for a completely open, royalty-free multimedia format. Other multimedia formats, such as MPEG-4 video and MP3 audio, are patented and subject to license fees for commercial use. Like many other image and video formats, Theora uses chroma subsampling, block based motion compensation and an 8 by 8 DCT block. This is comparable to MPEG-1/2/4. It supports intra coded frames and forward predictive frames but not bi-predictive frames that can be found in many other video codecs.[3]

History

VP3 was originally a proprietary and patented video codec developed by On2 Technologies. In September 2001 On2 donated VP3 to the public under a free software / open source license and disclaimed all rights to it (including their patents on the technology) letting anyone use Theora and other VP3-derived codecs for any purpose.[4] In 2002, On2 entered into an agreement with the Xiph.Org Foundation to make VP3 the basis of a new, free video codec, Theora. On2 declared Theora to be the successor in VP3's lineage.

Current status

After several years of beta status, Theora released its first stable (1.0) version, in November 2008. However, since the bitstream format was frozen in 2004 (version 1.0alpha3), videos encoded with any version of Theora since that time will continue to be compatible with any future player.[5] Current work is now focused on stabilizing the experimental "Thusnelda" branch for integration into the future 1.1 release[6].

As a new format with little commercial support, Theora is struggling to get acceptance from distributors, especially on the web (see the ogg controversy (HTML 5)). On the other hand, as the only mature royalty free video codec (as of June 2009), it is well established both as a baseline video format in modern free software and as the format of choice for Wikipedia and many other idealistic organisations.

Performance

Encoding performance

Previous evaluations have found the available VP3[7] and Theora encoders[8][9] inferior compared to contemporary video codecs.

Efforts to improve performance

Sources[who?] close to Xiph.org have stated that the performance characteristics of the current Theora reference implementation are mostly dominated by implementation issues inherited from the original VP3 code base. An internal document exists that lists the known implementation problems and gives an example of how improving one aspect of the encoder can lead to visibly improved quality.[10] Current work on Theora is focused on the thusnelda branch that will be released as version 1.1 of reference codec libtheora. A recent (May 2009) review of this work shows a considerable improvement in quality, both subjectively and as measured by PSNR, just by improving the forward DCT and quantisation matrices.[11] A flaw in the version of FFmpeg used in the test initially led to incorrect reports of Theora PSNR surpassing H.264. Although not achieving this goal, the improvement in the measured PSNR and the perceived quality is considerable. Further work on adaptive quantization, as well as overall detailed subjective tuning of the codec, is still to come.

Playback performance

Currently, there is no mainstream hardware acceleration support for Theora. Consequently, playback performance, especially on lower-end systems (such as netbooks) lacks in comparison to competing formats, such as MPEG-4.

Playback

Embedded in HTML 5

As originally recommended by HTML 5, these browsers support Theora when embedded by the video element:

Browser plugins

Supporting media frameworks

Supporting applications

Encoding

There are several third-party programs that support encoding through libtheora:

Description Operating Systems Supported
  Linux Mac OS X Windows
Firefogg is a Firefox browser extension version of ffmpeg2theora. It enables in browser transcoding of many video formats. Encoding settings are provided by the web service, transcoding happens on the clients computer then an "upload in chunks" api enables reusable transfers of the video to the web server. Yes Yes Yes
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. Yes Yes Yes
VLC is able to encode Theora video from any of the video sources it supports, and also stream it. (Note that v0.8 has had some problems with encoding Theora on the Mac OS X release). Yes Yes Yes
OggConvert (open source) Yes   Almost
FreeJ ('Video DJ', open source) can encode and stream Theora. Video comes from one or more different video or image files/sources while audio is encoded from the soundcard. Yes Yes  
Diva (the GNOME video editor). Yes    
Super (freeware).     Yes
LiVES (open source video editing software). Yes Yes  
Thoggen (a GTK+ and GStreamer based DVD-backup utility). Yes    
HandBrake Yes Yes Yes
KungFu DVD Ripper Yes    
Recordmydesktop (records an Ogg Theora video of the screen, optional Vorbis audio). Yes    

The libtheora library contains the reference implementation of the Theora specification for encoding and decoding. libtheora is still under development by the Xiph.Org Foundation. The library is released under the terms of a BSD-style license.

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

Description Operating Systems Supported
  Linux Mac OS X Windows
CVS versions of the Cinelerra non-linear video editing system support Theora, as of August 2005. Yes Yes  

Streaming

The following streaming media servers are capable of streaming Theora video:

Description Operating Systems Supported
  Linux Mac OS X Windows
VLC Yes Yes Yes
Icecast Yes  ? Yes
FreeCast, a Java peer-to-peer streaming solution Yes  ? Yes
Flumotion streaming media server Yes    

Theora Streaming Studio is a complete client to connect to an Icecast server.

See also

References

External links







stock | retire | vm
Why are we here?
All text is available under the terms of the GNU Free Documentation License
This page is cache of Wikipedia. History