1
0
mirror of https://github.com/mpv-player/mpv synced 2025-01-30 03:32:50 +00:00

vo_opengl: d3d11egl: support full range YUV

MSDN documents this as "Introduced in Windows 8.1.". I assume on Windows
7 this field will simply be ignored. Too bad for Windows 7 users.

Also, I'm not using D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_16_235 and
D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_0_255, because these are apparently
completely missing from the MinGW headers. (Such a damn pain.)
This commit is contained in:
wm4 2016-05-11 15:23:02 +02:00
parent 7983cda5bf
commit cb694ffd8e

View File

@ -503,9 +503,8 @@ static int create_video_proc(struct gl_hwdec *hw, struct mp_image_params *params
p->video_proc,
0, FALSE);
if ((params->colorspace != MP_CSP_BT_601 &&
params->colorspace != MP_CSP_BT_709) ||
params->colorlevels != MP_CSP_LEVELS_TV)
if (params->colorspace != MP_CSP_BT_601 &&
params->colorspace != MP_CSP_BT_709)
{
MP_WARN(hw, "Unsupported video colorspace (%s/%s). Consider disabling "
"hardware decoding, or using --hwdec=d3d11va-copy to get "
@ -516,6 +515,7 @@ static int create_video_proc(struct gl_hwdec *hw, struct mp_image_params *params
D3D11_VIDEO_PROCESSOR_COLOR_SPACE csp = {
.YCbCr_Matrix = params->colorspace != MP_CSP_BT_601,
.Nominal_Range = params->colorlevels == MP_CSP_LEVELS_TV ? 1 : 2,
};
ID3D11VideoContext_VideoProcessorSetStreamColorSpace(p->video_ctx,
p->video_proc,