pp
Enable the specified chain of postprocessing subfilters using libpostproc. This library should be automatically selected with a GPL build (--enable-gpl
). Subfilters must be separated by '/' and can be disabled by prepending a '-'. Each subfilter and some options have a short and a long name that can be used interchangeably, i.e. dr/dering are the same.
The filters accept the following options:
- 'subfilters'
-
Set postprocessing subfilters string.
All subfilters share common options to determine their scope:
- 'a/autoq'
-
Honor the quality commands for this subfilter.
- 'c/chrom'
-
Do chrominance filtering, too (default).
- 'y/nochrom'
-
Do luminance filtering only (no chrominance).
- 'n/noluma'
-
Do chrominance filtering only (no luminance).
These options can be appended after the subfilter name, separated by a '|'.
Available subfilters are:
- 'hb/hdeblock[|difference[|flatness]]'
-
Horizontal deblocking filter
- 'difference'
-
Difference factor where higher values mean more deblocking (default:
32
). - 'flatness'
-
Flatness threshold where lower values mean more deblocking (default:
39
).
- 'vb/vdeblock[|difference[|flatness]]'
-
Vertical deblocking filter
- 'difference'
-
Difference factor where higher values mean more deblocking (default:
32
). - 'flatness'
-
Flatness threshold where lower values mean more deblocking (default:
39
).
- 'ha/hadeblock[|difference[|flatness]]'
-
Accurate horizontal deblocking filter
- 'difference'
-
Difference factor where higher values mean more deblocking (default:
32
). - 'flatness'
-
Flatness threshold where lower values mean more deblocking (default:
39
).
- 'va/vadeblock[|difference[|flatness]]'
-
Accurate vertical deblocking filter
- 'difference'
-
Difference factor where higher values mean more deblocking (default:
32
). - 'flatness'
-
Flatness threshold where lower values mean more deblocking (default:
39
).
The horizontal and vertical deblocking filters share the difference and flatness values so you cannot set different horizontal and vertical thresholds.
- 'h1/x1hdeblock'
-
Experimental horizontal deblocking filter
- 'v1/x1vdeblock'
-
Experimental vertical deblocking filter
- 'dr/dering'
-
Deringing filter
- 'tn/tmpnoise[|threshold1[|threshold2[|threshold3]]], temporal noise reducer'
-
- 'threshold1'
-
larger -> stronger filtering
- 'threshold2'
-
larger -> stronger filtering
- 'threshold3'
-
larger -> stronger filtering
- 'al/autolevels[:f/fullyrange], automatic brightness / contrast correction'
-
- 'f/fullyrange'
-
Stretch luminance to
0-255
.
- 'lb/linblenddeint'
-
Linear blend deinterlacing filter that deinterlaces the given block by filtering all lines with a
(1 2 1)
filter. - 'li/linipoldeint'
-
Linear interpolating deinterlacing filter that deinterlaces the given block by linearly interpolating every second line.
- 'ci/cubicipoldeint'
-
Cubic interpolating deinterlacing filter deinterlaces the given block by cubically interpolating every second line.
- 'md/mediandeint'
-
Median deinterlacing filter that deinterlaces the given block by applying a median filter to every second line.
- 'fd/ffmpegdeint'
-
FFmpeg deinterlacing filter that deinterlaces the given block by filtering every second line with a
(-1 4 2 4 -1)
filter. - 'l5/lowpass5'
-
Vertically applied FIR lowpass deinterlacing filter that deinterlaces the given block by filtering all lines with a
(-1 2 6 2 -1)
filter. - 'fq/forceQuant[|quantizer]'
-
Overrides the quantizer table from the input with the constant quantizer you specify.
- 'quantizer'
-
Quantizer to use
- 'de/default'
-
Default pp filter combination (
hb|a,vb|a,dr|a
) - 'fa/fast'
-
Fast pp filter combination (
h1|a,v1|a,dr|a
) - 'ac'
-
High quality pp filter combination (
ha|a|128|7,va|a,dr|a
)
Command line examples
- Apply horizontal and vertical deblocking, deringing and automatic brightness/contrast:
pp=hb/vb/dr/al
- Apply default filters without brightness/contrast correction:
pp=de/-al
- Apply default filters and temporal denoiser:
pp=default/tmpnoise|1|2|3
- Apply deblocking on luminance only, and switch vertical deblocking on or off automatically depending on available CPU time:
pp=hb|y/vb|a