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:
parent
7983cda5bf
commit
cb694ffd8e
@ -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,
|
||||
|
Loading…
Reference in New Issue
Block a user