diff options
-rw-r--r-- | DOCS/man/vo.rst | 26 | ||||
-rw-r--r-- | video/out/filter_kernels.c | 2 | ||||
-rw-r--r-- | video/out/gl_video.c | 4 |
3 files changed, 17 insertions, 15 deletions
diff --git a/DOCS/man/vo.rst b/DOCS/man/vo.rst index 2ff8d682e1..ae7e377771 100644 --- a/DOCS/man/vo.rst +++ b/DOCS/man/vo.rst @@ -291,27 +291,29 @@ Available video output drivers are: ``lscale=<filter>`` ``bilinear`` - Bilinear hardware texture filtering (fastest, low quality). - This is the default. + Bilinear hardware texture filtering (fastest, very low quality). + This is the default for compatibility reasons. ``spline36`` Mid quality and speed. This is the default when using ``opengl-hq``. - ``lanczos3`` - Lanczos scaling with radius=3. Provides mid quality and speed. - Worse than ``spline36``. + ``lanczos`` + Lanczos scaling. Provides mid quality and speed. Generally worse + than ``spline36``, but it results in a slightly sharper image + which is good for some content types. The number of taps can be + controlled with ``lradius``, but is best left unchanged. - ``ewa_lanczos3`` - Elliptic weighted average Lanczos scaling filter. Also known as - Jinc. Relatively slow, but very good quality. + ``ewa_lanczos`` + Elliptic weighted average Lanczos scaling. Also known as Jinc. + Relatively slow, but very good quality. The number of taps can + be controlled with ``lradius``. - ``ewa_lanczos4`` - Better quality than ``ewa_lanczos3``, but slower. + Adding extra taps makes the filter sharper but adds more ringing. ``mitchell`` Mitchell-Netravali. The ``b`` and ``c`` parameters can be set with ``lparam1`` and ``lparam2``. Both are set to 1/3 by default. - Can be useful as special-purpose filter for downscaling. + This filter is very good at downscaling (see ``lscale-down``). There are some more filters, but most are not as useful. For a complete list, pass ``help`` as value, e.g.:: @@ -327,7 +329,7 @@ Available video output drivers are: ``lradius=<r>`` Set radius for filters listed below, must be a float number between 1.0 - and 8.0. Defaults to be 2.0 if not specified. + and 16.0. Defaults to be 3.0 if not specified. ``sinc``, ``lanczos``, ``ewa_lanczos``, ``blackman``, ``gaussian`` diff --git a/video/out/filter_kernels.c b/video/out/filter_kernels.c index d983e9318f..f2c97b4bde 100644 --- a/video/out/filter_kernels.c +++ b/video/out/filter_kernels.c @@ -57,7 +57,7 @@ bool mp_init_filter(struct filter_kernel *filter, const int *sizes, double inv_scale) { if (filter->radius < 0) - filter->radius = 2.0; + filter->radius = 3.0; // polar filters can be of any radius, and nothing special is needed if (filter->polar) { filter->size = filter->radius; diff --git a/video/out/gl_video.c b/video/out/gl_video.c index 9aacf57ae9..e3eb4d1abf 100644 --- a/video/out/gl_video.c +++ b/video/out/gl_video.c @@ -366,8 +366,8 @@ const struct m_sub_options gl_video_conf = { OPT_FLOAT("lparam2", scaler_params[0][1], 0), OPT_FLOAT("cparam1", scaler_params[1][0], 0), OPT_FLOAT("cparam2", scaler_params[1][1], 0), - OPT_FLOATRANGE("lradius", scaler_radius[0], 0, 1.0, 32.0), - OPT_FLOATRANGE("cradius", scaler_radius[1], 0, 1.0, 32.0), + OPT_FLOATRANGE("lradius", scaler_radius[0], 0, 1.0, 16.0), + OPT_FLOATRANGE("cradius", scaler_radius[1], 0, 1.0, 16.0), OPT_FLAG("scaler-resizes-only", scaler_resizes_only, 0), OPT_FLAG("fancy-downscaling", fancy_downscaling, 0), OPT_FLAG("sigmoid-upscaling", sigmoid_upscaling, 0), |