Quality
This is the default mode of operation, with a default quality level of 3. Fractional quality levels such as 2.5 are permitted. Normal quality range is 0 - 10.
Variable BitRate
Normal VBR encoding. Faster than managed mode, generaly produces better quality files.
Managed BitRate (--managed)
Set bitrate management mode. This turns off the normal VBR encoding, but allows hard or soft bitrate constraints to be enforced by the encoder. This mode is much slower, and may also be lower quality. It is primarily useful for creating files for streaming.
Quality (-q n/--quality=n)
Sets encoding quality to n, between -1 (lowest) and 10 (highest). Only for quality mode of operation.
Nominal bitrate (-b n/--bitrate=n)
Sets encoding to the bitrate closest to n (in kb/s). Only for variable and managed bitrate modes of operation.
Minimun bitrate (-m n/--min-bitrate=n)
Sets minimum bitrate to n (in kb/s). Only for managed bitrate mode of operation.
Maximun bitrate (-M n/--max-bitrate=n)
Sets maximum bitrate to n (in kb/s). Only for managed bitrate mode of operation.
Resample (--resample n)
Resample input to the given sample rate (in Hz) before encoding. Primarily useful for downsampling for lower-bitrate encoding.
Downmix (--downmix)
Downmix input from stereo to mono (has no effect on non-stereo streams). Useful for lower-bitrate encoding.
Bitrate average window (--advanced-encode-option bitrate_average_window=NN)
Set the managed bitrate window to NN seconds. The bitrate will be forced to the specified average over a floating window of this length. May be fractional (e.g. 3.5).
Lowpass filter (--advanced-encode-option lowpass_frequency=NN)
Set the lowpass frequency to NN kHz.
Impulse trigger Profile (--advanced-encode-option impulse_trigger_profile=Y)
Allows users to control how easily Vorbis switches to short blocks to encode transients. It won't improve pre-echo (there is already the impulse_noisetune option for that) but it will cause Vorbis to generally use short blocks more often, useful for encoding samples that have 'microattacks'. This will lead to an increase in bitrate.
Y is a certain profile number, which is a number between 0 and 6. If you choose anything outside this range, it will ignore it and use the default profile for that particular q setting.
The defaults (normal vorbis behaviour without using this switch) for each q are listed below:
q => profile: -1 => 0; 0 => 1; 1 => 1; 2 => 1.5; 3 => 2; 4 => 2; 5 => 2.5; 6 => 2.7; 7 => 3; 8 => 3.7; 9 => 4; 10 => 4
For example, if you do a normal encode at -q 4, Vorbis by default will be using profile 2. If the music has a lot of microattacks and you hear smearing, you can use the impulse_trigger_profile to set the profile to 3 to trigger short blocks more easily. If that doesn't work, you can try 4. The bitrate will increase each time you go up to 4.
Impulse noise tune (--advanced-encode-option impulse_noisetune=n)
Regulates how many bits are used for encoding a short block. Values range from -15 to 0 (default). Lower values will throw more at coding impulse blocks which will raise quality (and also bitrate).