mirror of
https://github.com/mpv-player/mpv
synced 2025-03-11 08:37:59 +00:00
vo_gpu_next: add --corner-rounding option
For better or worse.
This commit is contained in:
parent
f1600ea9cf
commit
0af81b16d8
@ -77,6 +77,7 @@ Interface changes
|
|||||||
`--gpu-shader-cache` is no longer required
|
`--gpu-shader-cache` is no longer required
|
||||||
- remove the `--tone-mapping-crosstalk` option
|
- remove the `--tone-mapping-crosstalk` option
|
||||||
- add `--gamut-mapping-mode=perceptual|relative|saturation|absolute|linear`
|
- add `--gamut-mapping-mode=perceptual|relative|saturation|absolute|linear`
|
||||||
|
- add `--corner-rounding` option
|
||||||
--- mpv 0.35.0 ---
|
--- mpv 0.35.0 ---
|
||||||
- add the `--vo=gpu-next` video output driver, as well as the options
|
- add the `--vo=gpu-next` video output driver, as well as the options
|
||||||
`--allow-delayed-peak-detect`, `--builtin-scalers`,
|
`--allow-delayed-peak-detect`, `--builtin-scalers`,
|
||||||
|
@ -5967,6 +5967,12 @@ them.
|
|||||||
remaining quantization artifacts. Higher numbers add more noise. (Default
|
remaining quantization artifacts. Higher numbers add more noise. (Default
|
||||||
48)
|
48)
|
||||||
|
|
||||||
|
``--corner-rounding=<0..1>``
|
||||||
|
If set to a value above 0.0, the output will be rendered with rounded
|
||||||
|
corners, as if an alpha transparency mask had been applied. The value
|
||||||
|
indicates the relative fraction of the side length to round - a value of
|
||||||
|
1.0 rounds the corners as much as possible. (``--vo=gpu-next`` only)
|
||||||
|
|
||||||
``--sharpen=<value>``
|
``--sharpen=<value>``
|
||||||
If set to a value other than 0, enable an unsharp masking filter. Positive
|
If set to a value other than 0, enable an unsharp masking filter. Positive
|
||||||
values will sharpen the image (but add more ringing and aliasing). Negative
|
values will sharpen the image (but add more ringing and aliasing). Negative
|
||||||
|
@ -151,6 +151,8 @@ struct priv {
|
|||||||
bool delayed_peak;
|
bool delayed_peak;
|
||||||
bool inter_preserve;
|
bool inter_preserve;
|
||||||
bool target_hint;
|
bool target_hint;
|
||||||
|
|
||||||
|
float corner_rounding;
|
||||||
};
|
};
|
||||||
|
|
||||||
static void update_render_options(struct vo *vo);
|
static void update_render_options(struct vo *vo);
|
||||||
@ -1815,6 +1817,9 @@ static void update_render_options(struct vo *vo)
|
|||||||
p->params.disable_linear_scaling = !opts->linear_downscaling && !opts->linear_upscaling;
|
p->params.disable_linear_scaling = !opts->linear_downscaling && !opts->linear_upscaling;
|
||||||
p->params.disable_fbos = opts->dumb_mode == 1;
|
p->params.disable_fbos = opts->dumb_mode == 1;
|
||||||
p->params.blend_against_tiles = opts->alpha_mode == ALPHA_BLEND_TILES;
|
p->params.blend_against_tiles = opts->alpha_mode == ALPHA_BLEND_TILES;
|
||||||
|
#if PL_API_VER >= 277
|
||||||
|
p->params.corner_rounding = p->corner_rounding;
|
||||||
|
#endif
|
||||||
|
|
||||||
// Map scaler options as best we can
|
// Map scaler options as best we can
|
||||||
p->params.upscaler = map_scaler(p, SCALER_SCALE);
|
p->params.upscaler = map_scaler(p, SCALER_SCALE);
|
||||||
@ -1998,6 +2003,7 @@ const struct vo_driver video_out_gpu_next = {
|
|||||||
|
|
||||||
.options = (const struct m_option[]) {
|
.options = (const struct m_option[]) {
|
||||||
{"allow-delayed-peak-detect", OPT_BOOL(delayed_peak)},
|
{"allow-delayed-peak-detect", OPT_BOOL(delayed_peak)},
|
||||||
|
{"corner-rounding", OPT_FLOAT(corner_rounding), M_RANGE(0, 1)},
|
||||||
{"interpolation-preserve", OPT_BOOL(inter_preserve)},
|
{"interpolation-preserve", OPT_BOOL(inter_preserve)},
|
||||||
{"lut", OPT_STRING(lut.opt), .flags = M_OPT_FILE},
|
{"lut", OPT_STRING(lut.opt), .flags = M_OPT_FILE},
|
||||||
{"lut-type", OPT_CHOICE_C(lut.type, lut_types)},
|
{"lut-type", OPT_CHOICE_C(lut.type, lut_types)},
|
||||||
|
Loading…
Reference in New Issue
Block a user