Select correct color matrix for 10-bit SDR

This commit is contained in:
ns6089
2025-11-03 11:49:57 +03:00
committed by Cameron Gutman
parent 181dba5864
commit af37002a60
2 changed files with 2 additions and 2 deletions

View File

@@ -709,7 +709,7 @@ void D3D11VARenderer::bindColorConversion(AVFrame* frame)
bool fullRange = isFrameFullRange(frame);
int colorspace = getFrameColorspace(frame);
bool yuv444 = (m_DecoderParams.videoFormat & VIDEO_FORMAT_MASK_YUV444);
int bits = (colorspace == COLORSPACE_REC_2020) ? 10 : 8;
int bits = (m_DecoderParams.videoFormat & VIDEO_FORMAT_MASK_10BIT) ? 10 : 8;
if (yuv444) {
// We'll need to use one of the 4:4:4 shaders for this pixel format

View File

@@ -264,7 +264,7 @@ public:
if (colorspace != m_LastColorSpace || fullRange != m_LastFullRange || m_HdrMetadataChanged) {
CGColorSpaceRef newColorSpace;
ParamBuffer paramBuffer;
int bits = (colorspace == COLORSPACE_REC_2020) ? 10 : 8;
int bits = (m_VideoFormat & VIDEO_FORMAT_MASK_10BIT) ? 10 : 8;
// Stop the display link before changing the Metal layer
stopDisplayLink();