Skip to content

Theora

currentMigrated from docs/video/Theora.mdx at 37c3317fd058; modified for Encode Wiki · CC BY-SA 4.0

Theora is a legacy lossy video codec from Xiph.Org, derived from On2’s VP3. The bitstream was published in 2004 and libtheora 1.0 followed in 2008. It is normally stored in Ogg (.ogv) with Vorbis audio, and was the royalty-free web video option before WebM. Today you meet it in old content and some free-software tooling; use AV1, VP9 or AVC for anything new.

It is 8-bit Y’CbCr only, in 4:2:0, 4:2:2 or 4:4:4, with intra and inter frames. There is no HDR, alpha or high bit depth.

FFmpeg decodes Theora natively. Encoding needs a build with libtheora (and libvorbis for audio):

Terminal window
ffmpeg -i input.mkv -c:v libtheora -q:v 7 -c:a libvorbis -q:a 4 output.ogv

-q:v runs from 0 to 10 and higher is better. Without -q:v or -b:v, FFmpeg’s generic 200 kb/s default applies, which looks poor at most resolutions. Stick to 4:2:0 for playback compatibility; the encoder also accepts yuv422p and yuv444p.

  • libtheora 1.2.0 (March 2025) is the current library release.
  • Browsers have dropped it: MDN lists Theora support only up to Chrome 121, Firefox 126 and Edge 121, and Safari never supported it. See video codec support.