Version 3 (modified by llogan, 5 years ago) (diff)

add VP8 note

A Brief Theora and Vorbis Encoding Guide

The Theora video format, Vorbis audio format, and Ogg container formats were developed by as free and open-source media formats. ffmpeg can create these formats by using the external encoding libraries libtheora and libvorbis.

To use these encoders make sure your ffmpeg build has been compiled with --enable-libtheora and --enable-libvorbis, or refer to the output of ffmpeg -codecs. If you want to compile ffmpeg to support these encoders see the various FFmpeg Compilation Guides for detailed instructions.

libvorbis (-codec:a libvorbis) is recommended over the very experimental, native FFmpeg Vorbis audio encoder (-codec:a vorbis -strict experimental) since it does not provide comparable quality to libvorbis.

Note: More modern alternatives like VP8 can often provide better video quality at a lower bitrate. See the FFmpeg and VP8 Encoding Guide.

Variable Bitrate (VBR)

ffmpeg -i input.mkv -codec:v libtheora -qscale:v 7 -codec:a libvorbis -qscale:a 5 output.ogv
  • -qscale:v – video quality. Range is 0–10, where 10 is highest quality. 5–7 is a good range to try. If you omit -qscale:v (or the alias -q:v) then ffmpeg will use the default -b:v 200k which will most likely provide a poor quality output.
  • -qscale:a – audio quality. Range is 0–10, where 10 is highest quality. 3–6 is a good range to try. Default is -qscale:a 3.

Note: If you omit -codec:a libvorbis then the native flac audio encoder will be used by default for the ogg/ogv output container.

Other Resources