@anchor{scaler_options}
@chapter Scaler Options
@c man begin SCALER OPTIONS

The video scaler supports the following named options.

Options may be set by specifying -@var{option} @var{value} in the
FFmpeg tools. For programmatic use, they can be set explicitly in the
@code{SwsContext} options or through the @file{libavutil/opt.h} API.

@table @option

@anchor{sws_flags}
@item sws_flags
Set the scaler flags. This is also used to set the scaling
algorithm. Only a single algorithm should be selected.

It accepts the following values:
@table @samp
@item fast_bilinear
Select fast bilinear scaling algorithm.

@item bilinear
Select bilinear scaling algorithm.

@item bicubic
Select bicubic scaling algorithm.

@item experimental
Select experimental scaling algorithm.

@item neighbor
Select nearest neighbor rescaling algorithm.

@item area
Select averaging area rescaling algorithm.

@item bicublin
Select bicubic scaling algorithm for the luma component, bilinear for
chroma components.

@item gauss
Select Gaussian rescaling algorithm.

@item sinc
Select sinc rescaling algorithm.

@item lanczos
Select lanczos rescaling algorithm.

@item spline
Select natural bicubic spline rescaling algorithm.

@item print_info
Enable printing/debug logging.

@item accurate_rnd
Enable accurate rounding.

@item full_chroma_int
Enable full chroma interpolation.

@item full_chroma_inp
Select full chroma input.

@item bitexact
Enable bitexact output.
@end table

@item srcw
Set source width.

@item srch
Set source height.

@item dstw
Set destination width.

@item dsth
Set destination height.

@item src_format
Set source pixel format (must be expressed as an integer).

@item dst_format
Set destination pixel format (must be expressed as an integer).

@item src_range
Select source range.

@item dst_range
Select destination range.

@item param0, param1
Set scaling algorithm parameters. The specified values are specific of
some scaling algorithms and ignored by others. The specified values
are floating point number values.

@item sws_dither
Set the dithering algorithm. Accepts one of the following
values. Default value is @samp{auto}.

@table @samp
@item auto
automatic choice

@item none
no dithering

@item bayer
bayer dither

@item ed
error diffusion dither

@item a_dither
arithmetic dither, based using addition

@item x_dither
arithmetic dither, based using xor (more random/less apparent patterning that
a_dither).

@end table

@end table

@c man end SCALER OPTIONS
