Filename extension | .ogv, .ogg |
---|---|
Internet media type | video/ogg |
Developed by | Xiph.org |
Initial release | 1 June 2004 [1] |
Latest release | Theora I 16 March 2011 [2] |
Type of format | Video coding format |
Contained by | Ogg, Matroska |
Extended from | VP3 |
Standard | Specification |
Open format? | Yes [3] |
Free format? | Yes [4] |
Website | theora.org |
Developer(s) | Xiph.org |
---|---|
Initial release | 3 November 2008 (1.0) |
Stable release | 1.1.1 / 1 October 2009 [5] |
Preview release | 1.2.0 Alpha 1 / 24 September 2010 [6] |
Written in | C |
Operating system | Unix-like (incl Linux, Mac OS X), Windows |
Type | Video codec, reference implementation |
License | 3-clause BSD |
Website | www |
Theora is a free lossy video compression format. [7] It was developed by the Xiph.Org Foundation and distributed without licensing fees alongside their other free and open media projects, including the Vorbis audio format and the Ogg container.
The libtheora video codec is the reference implementation of the Theora video compression format developed by the Xiph.Org Foundation. [8] [9]
Theora was derived from the formerly proprietary VP3 codec, released into the public domain by On2 Technologies. It is broadly comparable in design and bitrate efficiency to MPEG-4 Part 2, early versions of Windows Media Video, and RealVideo while it lacked some of the features present in some of these other codecs. It is comparable in open standards philosophy to the BBC's Dirac codec.
Theora was named after Theora Jones, Edison Carter's Controller on the Max Headroom television program. [10]
Theora is a variable-bitrate, DCT-based video compression scheme. Like most common video codecs, Theora used chroma subsampling, block-based motion compensation and an 8-by-8 DCT block. Pixels are grouped into various structures, namely blocks, super blocks, and macroblocks. Theora supports intra-coded frames ("keyframes") and forward-predictive frames, but not bi-predictive frames which are found in H.264 and VC-1. Theora also does not support interlacing, or bit-depths larger than 8 bits per component. [2]
Theora video streams can be stored in any suitable container format, but they are most commonly found in the Ogg container with Vorbis or FLAC audio streams. This combination provided a completely open, royalty-free multimedia format. It can also be used with the Matroska container. [11]
The Theora video-compression format is compatible with the VP3 video-compression format, which consisted of a backward-compatible superset. [12] [13] Theora is a superset of VP3, and VP3 streams (with some minor syntactic modifications) can be converted into Theora streams without recompression (but not vice versa). [13] VP3 video compression can be decoded using Theora implementations, but Theora video compression usually cannot be decoded using old VP3 implementations.
Theora's predecessor On2 TrueMotion VP3 was originally a proprietary and patent-encumbered video codec developed by On2 Technologies. VP3.1 was introduced in May 2000 [14] and followed three months later by the VP3.2 release, [15] which was the basis for Theora.
In August 2001, On2 Technologies announced that they would release an open source version of their VP3.2 video compression algorithm. [16] [17] In September 2001, On2 Technologies published the source code of the VP3.2 codec under the VP3.2 Public License 0.1, [18] a custom open-source license. [19] [20] The license only granted the right to modify the source code if the resultant larger work continued to support playback of VP3.2 data. [18] [21]
In March 2002, On2 responded to the public's reception by relicensing the VP3 codec under the GNU Lesser General Public License. [22] In June 2002, On2 donated VP3 to the Xiph.Org Foundation and offered it under the Ogg Vorbis BSD-style license. [23] [24] [25] [26] On2 also made an irrevocable, royalty-free license grant for any patent claims it might have over the software and any derivatives, [2] allowing anyone to use any VP3-derived codec for any purpose. [12] [27] In August 2002, On2 entered into an agreement with the Xiph.Org Foundation to make VP3 the basis of a new, free video codec, called Theora. [28] On2 declared Theora to be VP3's successor.[ citation needed ] On 3 October 2002, On2 and Xiph announced the completion and availability of the initial alpha code release of libtheora, Theora's reference implementation. [29]
There is no formal specification for VP3's bitstream format beyond the VP3 source code published by On2 Technologies. In 2003, Mike Melanson created an incomplete description of the VP3 bitstream format and decoding process at a higher level than source code, with some help from On2 and Xiph.Org Foundation. The Theora specification adopted some portions of this VP3 description. [2] [30]
A successor to Theora, Daala, was later merged into AV1. [31]
The Theora I bitstream format was frozen in June 2004 after the libtheora 1.0alpha3 release. [1] Videos encoded with any version of the libtheora since the alpha3 will be compatible with any future player. [1] [32] This is also true for videos encoded with any implementation of the Theora I specification since the format freeze. The Theora I Specification was completely published in 2004. [33] Any later changes in the specification are minor updates.
The Theora reference implementation libtheora spent several years in alpha and beta status. [32] The first alpha version was released on 25 September 2002 and the first beta version was released on 22 September 2007. [34] The first stable release of libtheora was made in November 2008. [35] [36] Work then focused on improving the codec's performance in the "Thusnelda" branch, which was released as version 1.1 in September 2009 as the second stable libtheora release. [32] [37] This release brought some technical improvements and new features, such as the new rate control module and the two-pass rate control.
The codename for the next version of libtheora was Ptalarbvorm. [38]
Theora was well established as a video format in open-source applications, and became the format used for Wikipedia's video content before replaced by VP9. However, the proposed adoption of Theora as part of the baseline video support in HTML5 resulted in controversy. [39]
In October 2023, Google announced intent to remove Theora support from Chromium (finalizing removal by Google Chrome 123), [40] with Firefox following suit. Google developers claimed that despite lack of adoption, Theora made a case for open and royalty-free codecs like AV1. [41] [ better source needed ]
Evaluations of the VP3 [42] and early Theora encoders [43] [44] [45] found that their subjective visual quality was inferior to that of contemporary video codecs. The performance characteristics of the Theora 1.0 reference implementation are dominated mostly by implementation problems inherited from the original VP3 code base. [46] Work that lead up to the 1.1 stable release focused on improving on or eliminating these. A May 2009 review of this work by Xiph developer Chris Montgomery claimed a considerable improvement in quality, both subjectively and as measured by PSNR, by improving the forward DCT and quantisation matrices. [47] More recently however,[ when? ] Xiph developers compared the 1.1 Theora encoder to YouTube's H.264 and H.263+ encoders, in response to concerns raised in 2009 about Theora's inferior performance by Chris DiBona, a Google employee. [48] They found the results from Theora to be nearly the same as YouTube's H.264 output, and much better than the H.263+ output. [49] [50]
The differences in quality, bitrate and file size between a YouTube H.264 video and a transcoded Ogg video file are very small. [51]
There was an open-source VHDL code base for a hardware Theora decoder in development. [52] [ needs update ] It began as a 2006 Google Summer of Code project, and it has been developed on both the Nios II and LEON processors. [53] However, there are currently no Theora decoder chips in production, and portable media players, smartphones and similar devices with limited computing power rely on such chips to provide efficient playback.
As originally recommended by HTML 5, these browsers support Theora when embedded by the video
element:
There are several third-party programs that support encoding through libtheora:
Name | Description | Operating Systems Supported | ||
---|---|---|---|---|
Unix-like | OS X | Windows | ||
A command-line program that transcodes video by decoding with FFmpeg and reencoding with libtheora to encode it | Yes | Yes | Yes | |
Can transcode to single-pass Theora 1.0 and optionally stream it | Yes | Yes | Yes | |
"Video DJing" software that can encode to and stream Theora | Yes | Yes | ? | |
The video editor supplied with KDE | Yes | ? | ? | |
The video editor supplied with GNOME | Yes | ? | ? | |
Video editing software for Linux. Can edit, encode and stream theora. | Yes | Yes | ? | |
Can output to Theora only with the Matroska container | Yes | Yes | Yes | |
Records the screen to Ogg Theora with optional Vorbis audio | Yes | ? | ? |
The libtheora library contains the reference implementation of the Theora specification for encoding and decoding. libtheora was developed by the Xiph.Org Foundation. The library was released under the terms of a BSD-style license.
Also, several media frameworks have support for Theora.
Name | Description | Operating Systems Supported | ||
---|---|---|---|---|
Unix-like | OS X | Windows | ||
Video editing software for Linux. Can edit, encode and stream theora. | Yes | Yes | ? | |
The KDE video editor. | Yes | ? | ? | |
Yes | ? | ? | ||
The GNOME video editor. | Yes | ? | ? | |
CVS versions of the Cinelerra non-linear video editing system support Theora, as of August 2005. | Yes | Yes | ? | |
| Command line programs to examine and edit Ogg files. | Yes | ? | Yes |
| Tools to resize, cut, split, join, and others [77] | Yes | Yes | Yes |
? | ? | Yes |
The following streaming media servers are capable of streaming Theora video:
Name | Description | Operating Systems Supported | ||
---|---|---|---|---|
Unix-like | OS X | Windows | ||
Yes | Yes | Yes | ||
Yes | ? | Yes | ||
Can stream ogg/theora/vorbis in realtime to a file or fifo. | Yes | Yes | ? | |
Elphel is the main maker of cameras that record in theora.
Ogg is a free, open container format maintained by the Xiph.Org Foundation. The authors of the Ogg format state that it is unrestricted by software patents and is designed to provide for efficient streaming and manipulation of high-quality digital multimedia. Its name is derived from "ogging", jargon from the computer game Netrek.
Vorbis is a free and open-source software project headed by the Xiph.Org Foundation. The project produces an audio coding format and software reference encoder/decoder (codec) for lossy audio compression, libvorbis. Vorbis is most commonly used in conjunction with the Ogg container format and it is therefore often referred to as Ogg Vorbis.
Speex is an audio compression codec specifically tuned for the reproduction of human speech and also a free software speech codec that may be used on voice over IP applications and podcasts. It is based on the code excited linear prediction speech coding algorithm. Its creators claim Speex to be free of any patent restrictions and it is licensed under the revised (3-clause) BSD license. It may be used with the Ogg container format or directly transmitted over UDP/RTP. It may also be used with the FLV container format.
FLAC is an audio coding format for lossless compression of digital audio, developed by the Xiph.Org Foundation, and is also the name of the free software project producing the FLAC tools, the reference software package that includes a codec implementation. Digital audio compressed by FLAC's algorithm can typically be reduced to between 50 and 70 percent of its original size and decompresses to an identical copy of the original audio data.
The Xiph.Org Foundation is a nonprofit organization that produces free multimedia formats and software tools. It focuses on the Ogg family of formats, the most successful of which has been Vorbis, an open and freely licensed audio format and codec designed to compete with the patented WMA, MP3 and AAC. As of 2013, development work was focused on Daala, an open and patent-free video format and codec designed to compete with VP9 and the patented High Efficiency Video Coding.
On2 TrueMotion VP3 is a (royalty-free) lossy video compression format and video codec. It is an incarnation of the TrueMotion video codec, a series of video codecs developed by On2 Technologies.
On2 Technologies, formerly known as The Duck Corporation, was a small publicly traded company, founded in New York City in 1992 and headquartered in Clifton Park, New York, that designed video codec technology. It created a series of video codecs called TrueMotion.
These tables compare features of multimedia container formats, most often used for storing or streaming digital video or digital audio content. To see which multimedia players support which container format, look at comparison of media players.
Christopher "Monty" Montgomery is an American programmer and engineer. He is the original creator of the Ogg Free Software container format and the Vorbis audio codec and others, and the founder of The Xiph.Org Foundation, which promotes public domain multimedia codecs. He uses xiphmont as an online pseudonym.
libavcodec is a free and open-source library of codecs for encoding and decoding video and audio data.
Α video codec is software or a device that provides encoding and decoding for digital video, and which may or may not include the use of video compression and/or decompression. Most codecs are typically implementations of video coding formats.
OggSquish is one of the first names used for the Ogg project developed from 1994 by the Xiphophorus company. Ogg Squish was also an attempt from the Xiphophorus company to create a royalty-free lossless audio compression codec.
VP8 is an open and royalty-free video compression format released by On2 Technologies in 2008.
Constrained Energy Lapped Transform (CELT) is an open, royalty-free lossy audio compression format and a free software codec with especially low algorithmic delay for use in low-latency audio communication. The algorithms are openly documented and may be used free of software patent restrictions. Development of the format was maintained by the Xiph.Org Foundation and later coordinated by the Opus working group of the Internet Engineering Task Force (IETF).
The HTML5 draft specification adds video
and audio
elements for embedding video and audio in HTML documents. The specification had formerly recommended support for playback of Theora video and Vorbis audio encapsulated in Ogg containers to provide for easier distribution of audio and video over the internet by using open standards, but the recommendation was soon after dropped.
HTML video is a subject of the HTML specification as the standard way of playing video via the web. Introduced in HTML5, it is designed to partially replace the object element and the previous de facto standard of using the proprietary Adobe Flash plugin, though early adoption was hampered by lack of agreement as to which video coding formats and audio coding formats should be supported in web browsers. As of 2020, HTML video is the only widely supported video playback technology in modern browsers, with the Flash plugin being phased out.
WebM is an audiovisual media file format. It is primarily intended to offer a royalty-free alternative to use in the HTML video and the HTML audio elements. It has a sister project, WebP, for images. The development of the format is sponsored by Google, and the corresponding software is distributed under a BSD license.
Opus is a lossy audio coding format developed by the Xiph.Org Foundation and standardized by the Internet Engineering Task Force, designed to efficiently code speech and general audio in a single format, while remaining low-latency enough for real-time interactive communication and low-complexity enough for low-end embedded processors. Opus replaces both Vorbis and Speex for new applications, and several blind listening tests have ranked it higher-quality than any other standard audio format at any given bitrate until transparency is reached, including MP3, AAC, and HE-AAC.
HTML audio is a subject of the HTML specification, incorporating audio input, playback, and synthesis, as well as speech to text, all in the browser.
{{citation}}
: CS1 maint: numeric names: authors list (link){{citation}}
: CS1 maint: numeric names: authors list (link){{citation}}
: CS1 maint: numeric names: authors list (link){{citation}}
: CS1 maint: numeric names: authors list (link){{citation}}
: CS1 maint: numeric names: authors list (link){{citation}}
: CS1 maint: numeric names: authors list (link)