Theora: Difference between revisions

From XiphWiki
Jump to navigation Jump to search
(→‎Status: moved from Theora:Beta1ToDo)
Line 26: Line 26:


== Status ==
== Status ==
* Alpha 5 is the latest release.
* Alpha 5 is the latest release.
* Beta 1 will be the next release.
* Beta 1 will be the next release.
* The bitstream format was frozen in Theora alpha 3: every file created with this encoder (and, of course, later encoders) will be playable by any compliant Theora decoder.
* The bitstream format was frozen in Theora alpha 3: every file created with this encoder (and, of course, later encoders) will be playable by any compliant Theora decoder.
* Other branches:
** The latest SVN of the stable tree can be found here: [http://svn.xiph.org/trunk/theora/ theora].
** There is a branch with liboil calls: [http://svn.xiph.org/branches/theora-oil/ theora-oil] [UNMANTEINED].
** Also there is [http://svn.xiph.org/trunk/theora-exp/ theora-exp], an experimental library supporting the whole spec and having also MMX optimization for decoding.


== Development ==
== Development ==

Revision as of 01:11, 29 May 2006

Theora is our video codec, based on the VP3 codec donated by On2 Technologies. We've refined and extended it, giving it the same future scope for encoder improvement Vorbis has. See http://theora.org/ for more information.

Features

Features available in the Theora format (and a comparison to VP3 and MPEG-4 ASP):

  • block-based motion compensation
  • 8x8 Type-II Discrete Cosine Transform
  • free-form variable bit rates (VBR)
  • adaptive in-loop deblocking applied to the edges of the coded blocks (not existing in MPEG-4 ASP)
  • block sizes down to 8x8 (MPEG-4 ASP supports 8x8 only with 4MV)
  • 384 8x8 custom quantization matrices: intra/inter, luma/chroma and even each quant (more than VP3 and MPEG-4 ASP/AVC)
  • flexible entropy encoding (Theora supports 80 VLC tables selectable per-frame, MPEG-4 ASP has just one)
  • 4:2:0, 4:2:2, and 4:4:4 chroma subsampling formats (VP3 and MPEG-4 ASP only support 4:2:0)
  • 8 bits per pixel per color channel
  • multiple reference frames (not possible in MPEG-4 ASP)
  • pixel aspect ratio (eg for anamorphic signalling/playback)
  • non-multiple of 16 picture sizes (as possible in ASP, but not in VP3)
  • non-linear scaling of quants values (as done in MPEG-4 AVC)
  • adaptive quantisation down to the block level (as possible in MPEG-4 ASP/AVC, but not in VP3)
  • intra frames (I-Frames in MPEG), inter frames (P-Frames), but no B-Frames (as supported in MPEG-4 ASP/AVC)
  • HalfPixel Motion Search Precision (MPEG-4 ASP/AVC supports HalfPixel or QuarterPixel)
  • technologies used already in Vorbis (decoder setup configuration, bitstream headers...) not available in VP3

Note that not all of these features are already implemented in the reference encoder/decoder.

Status

  • Alpha 5 is the latest release.
  • Beta 1 will be the next release.
  • The bitstream format was frozen in Theora alpha 3: every file created with this encoder (and, of course, later encoders) will be playable by any compliant Theora decoder.
  • Other branches:
    • The latest SVN of the stable tree can be found here: theora.
    • There is a branch with liboil calls: theora-oil [UNMANTEINED].
    • Also there is theora-exp, an experimental library supporting the whole spec and having also MMX optimization for decoding.

Development

More information

External links