Theora FAQ
What is Theora
Theora and VP3
Development
Using Theora
Misc and Credits
What is Theora
Q. What is Theora?
Theora is an
open video codec being developed by the Xiph.org
Foundation as part of their Ogg project (It is a project that aims to
integrate On2's
VP3
video codec, Ogg
Vorbis audio codec
and Ogg multimedia container formats into a multimedia solution that can
compete with
MPEG-4 format).
Theora is derived directly
from On2's VP3 codec; currently the two are nearly identical, varying
only in framing headers, but Theora will diverge and improve from
the main VP3 development lineage as time progresses.
Q. Why use Theora?
It's open and free. Do you need more reasons?
Q. What other video formats will Theora compete with?
Theora is targeted at competing with MPEG-4 (e.g., XviD and DivX),
RealVideo, Windows Media Video, and similar lower-bitrate video
compression schemes.
Q. What is Ogg? What is Vorbis? What is xiph.org?
Vorbis is an audio codec,
Theora is a video codec. Ogg is the transport layer that both are stored in,
so a video file will be Theora-encoded data inside an Ogg file, while audio
is normally Vorbis-encoded data inside an ogg file.
The
Xiph.org Foundation is a
Delaware non-profit company devoted to producing, maintaining and
supporting an open multimedia platform.
Q. What is the license for Theora?
Theora (and all associated technologies released by the Xiph.org
Foundation) is released to the public via a BSD-style license. It is
completely free for commercial or noncommercial use. That means that
commercial developers may independently write Theora software which is
compatible with the specification for no charge and without restrictions of
any kind.
Q. Why the name 'Theora?'
Like other Xiph.org Foundation codec projects such as Vorbis or Tarkin,
Theora is named after a fictional character. Theora Jones was the name of
Edison Carter's 'controller' on the television series Max Headroom. She was
played by Amanda Pays.
Theora and VP3
Q. Is the Theora bitstream identical to VP3?
Yes and No. Theora is a superset of VP3, so VP3 streams (with minor
syntactic modifications) can be made into Theora streams without
recompression (but not vice versa).
Theora will be almost entirely based upon the VP3 codec designed by On2.
However, Theora video data will be delivered inside of the Ogg container
format (with Vorbis for audio), so Ogg Theora files will not be the same as
VP3 files. There also may be quite a few performance advantages to using
Theora when 1.0 is complete; While our focus is integration, there will
certainly be a lot of optimization involved, as well.
Q. What can Theora do that VP3 couldn't do?
The major change from VP3 to Theora is architectural. VP3, like most
codecs of today, makes certain assumptions about the nature of the material
it compresses. These assumptions take the form of fixed sets of numeric
values, such as quantization matrices, which control how different
frequency components of the signal are handled, and token frequency tables,
which control the efficiency of post-transform lossless coding. In Theora,
we have leveraged the intrinsic flexibility of the Ogg multimedia framework
to allow the encoder to modify these values appropriately for the material.
This simple, powerful approach has already been proven effective in Vorbis,
and will allow for a longer cycle of encoder optimization without requiring
client-side updates.
Q. How will I transition my old VP3 files to the new format?
Because Theora is a 'superset' of VP3, tools can easily be created that
will allow VP3 files to be losslessly transcoded into Ogg Theora format
with no loss in quality.
Q. Can I convert Ogg Theora files into VP3?
Why would you want to do something like that? Are you nuts?
Q. Isn't VP3 a patented technology?
Yes, some portions of the VP3 codec are covered by patents. However, the
Xiph.org Foundation has negotiated an irrevocable free license to the VP3
codec for any purpose imaginable on behalf of the public. It is legal to
use VP3 in any way you see fit (unless, of course, you're doing something
illegal with it in your particular jurisdiction). You are free to download
VP3, use it free of charge, implement it in a for-sale product, implement
it in a free product, make changes to the source and distribute those
changes, or print the source code out and wallpaper your spare room with
it.
For more information, check the VP3 Legal Terms on the SVN page
Q. What if Xiph.org and On2 decide to break off their agreement?
Because Theora is an Open Source project, the source code will continue to
be available and development will continue. Users will still be protected
from the On2 patents.
Development
Q. When will it all be finished? Can I use it right now?
The bitstream format is frozen since the release of Theora alpha 3. So, files produced by
the alpha 3 reference encoder will be supported by all future decoders. This means
you can safely use Theora to encode your content right now.
Q. What is an Alpha Release?
Typically when software is created at a software company, it goes through a number of stages
before it's released out to the world. You've probably heard of 'beta-testing' before. That's
when people take code that has been deemed 'not quite ready' and are testing it out so that
the authors can fix bugs where necessary.
'Alpha' code usually is strictly for internal development only, which is to say, 'No one sees this code,
it's not even close to being done yet.' At the Xiph.org Foundation, we release everything we do
so that people can help us move the codebase forward by reporting bugs and submitting patches.
We encourage and depend on the open-source developer community to get
involved early. We release Alpha builds to give people a chance
to see what's cooking, and perhaps to add some ingredients of their own. If
you think you have the right stuff, please join the party at
www.Theora.org/lists.
While Theora is labelled alpha/beta it has been in production use in many systems for over 3 years and is completely safe to adopt.
Q. What is Tarkin?
Tarkin is essentially a proof-of-concept wavelet-based codec. Its
experimental nature means it will not be ready for general use for some
time. VP3 is a high-quality codec that can meet today's video needs now, so
Xiph.org will be focusing its efforts on Theora for the near future.
Q. How can I help with development?
Head on over to the
SVN
page to grab the codebase, and hack away! Post your contributions online,
and tell us about it on the
Theora-dev
mailing list.
Q. How will Ogg Theora interoperate with [insert your favorite media architecture]?
As the Ogg Vorbis format has gained acceptance, components have become
available to play Ogg files on practically all of the major media players.
We expect a similar if not superior level of support for Ogg Theora.
Developers wanted! (if you're interested, sign up for the
Theora-codecs@xiph.org mailing list).
Q. How can I donate to these amazing projects?
Wow, thanks! You can find more information on donating to the Xiph.org
Foundation by following
this link! Thanks in advance!
Using Theora
Q. What players currently support Theora?
Q. How can I encode videos to Theora?
Have a look at
ogg-theora-microhowto and transcode
quicktime mov files to Theora files under Linux.
You can use libogg, to wrap theora video with vorbis audio in Ogg
file.
A user-friendly way to convert .dv and .avi format video into Ogg Theora format is
with ffmpeg2theora. It can be found at:
http://www.v2v.cc/~j/ffmpeg2theora/
A way to both stream and encode theora format video is with videolan (VLC).
Example for streaming the video4linux device in ogg theora/vorbis:
vlc v4l:/dev/video:input=3:norm=pal:size=384x288 --sout \
'#transcode{vcodec=theora,vb=300,acodec=vorb,ab=96}:std{access=http,mux=ogg,url=server.example.org:8000}'
Or, replace "v4l:/dev/video:input=3:norm=pal:size=384x288" with a filename if
you want to transcode.
For more on the vlc syntax, see:
http://videolan.org/doc/videolan-howto/en/ch09.html
Q. Is there any way to use Theora on Microsoft Windows at this point?
Misc and Credits
Q. Who's in charge of Theora development?
The Xiph.org Foundation is the primary developer of Theora, but this is
mainly an integration issue. The VP3 codec that serves as the base of
Theora was written by a company called
On2 Technologies. Xiph.org will be
responsible for all aspects of the development. On2 will provide both
monetary and technical support to Xiph.org throughout the project. On2 is
also providing the source code of their implementation of the VP3 codec as
well as some of their video tools.
Q. Who designed this website?
This website is based on a design called 'Nutrition,' available for public
download from
Open Source Web Design.
The original author is known by the nickname of 'BrAInDeD-'.
Q. Who is the webmaster of this site?
That would be
Manuel Lora, the greatest webmaster
on the face of the planet.
Q. Who maintains The Glorious Theora FAQ?
No one person at the moment. Send changes to the list if it needs them. It
was originally written by Emmett Plant and Dan Miller. his FAQ wouldn't be
here at all without the work of Slammin' Stan Seibert, to whom we are
eternally grateful.
Q. When was this FAQ last updated?
August 6th, 2007 by Maik Merten.