summaryrefslogtreecommitdiffstats
path: root/video/decode/vd.c
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2013-08-24 19:37:34 +0200
committerwm4 <wm4@nowhere>2013-08-24 19:40:18 +0200
commit47e92b2f884d4dd831e3e59ae9c692b460ef8dc3 (patch)
tree545d089a4a1be158c135fd43eaa33d4d93538925 /video/decode/vd.c
parentba4654b72977b915e5f09d23ce02e099c2bd9d0f (diff)
downloadmpv-47e92b2f884d4dd831e3e59ae9c692b460ef8dc3.tar.bz2
mpv-47e92b2f884d4dd831e3e59ae9c692b460ef8dc3.tar.xz
video: handle video output levels with mp_image_params
Until now, video output levels (obscure feature, like using TV screens that require RGB output in limited range, similar to YUY) still required handling of VOCTRL_SET_YUV_COLORSPACE. Simplify this, and use the new mp_image_params code. This gets rid of some code. VOCTRL_SET_YUV_COLORSPACE is not needed at all anymore in VOs that use the reconfig callback. The result of VOCTRL_GET_YUV_COLORSPACE is now used only used for the colormatrix related properties (basically, for display on OSD). For other VOs, VOCTRL_SET_YUV_COLORSPACE will be sent only once after config instead of twice.
Diffstat (limited to 'video/decode/vd.c')
-rw-r--r--video/decode/vd.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/video/decode/vd.c b/video/decode/vd.c
index 1518d78695..fad9adbdf7 100644
--- a/video/decode/vd.c
+++ b/video/decode/vd.c
@@ -157,6 +157,7 @@ int mpcodecs_reconfig_vo(sh_video_t *sh, const struct mp_image_params *params)
p.colorspace = opts->requested_colorspace;
if (opts->requested_input_range != MP_CSP_LEVELS_AUTO)
p.colorlevels = opts->requested_input_range;
+ p.outputlevels = opts->requested_output_range;
// Detect colorspace from resolution.
// Make sure the user-overrides are consistent (no RGB csp for YUV, etc.).
@@ -184,8 +185,6 @@ int mpcodecs_reconfig_vo(sh_video_t *sh, const struct mp_image_params *params)
sh->vf_input = talloc(sh, struct mp_image_params);
*sh->vf_input = p;
- set_video_output_levels(sh);
-
if (opts->gamma_gamma != 1000)
set_video_colors(sh, "gamma", opts->gamma_gamma);
if (opts->gamma_brightness != 1000)