From 8c0f67a3053e7a440652c22442569379dd13286a Mon Sep 17 00:00:00 2001 From: urbanf <fabrice.urban@interdigital.com> Date: Fri, 23 Jul 2021 15:59:27 +0200 Subject: [PATCH] Fix for HIGH_BIT_DEPTH_SUPPORT --- source/App/EncoderApp/EncAppCfg.cpp | 12 +++++++++--- source/Lib/CommonLib/SEIColourTransform.cpp | 2 +- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/source/App/EncoderApp/EncAppCfg.cpp b/source/App/EncoderApp/EncAppCfg.cpp index 4c09ef88a..2581193bd 100644 --- a/source/App/EncoderApp/EncAppCfg.cpp +++ b/source/App/EncoderApp/EncAppCfg.cpp @@ -623,9 +623,15 @@ bool EncAppCfg::parseCfg( int argc, char* argv[] ) SMultiValueInput<int> cfg_DisplayPrimariesCode (0, 50000, 6, 6, defaultPrimaryCodes, sizeof(defaultPrimaryCodes )/sizeof(int)); SMultiValueInput<int> cfg_DisplayWhitePointCode (0, 50000, 2, 2, defaultWhitePointCode, sizeof(defaultWhitePointCode)/sizeof(int)); - SMultiValueInput<int16_t> cfg_SEICTILut0(0, 128, 0, MAX_CTI_LUT_SIZE + 1); - SMultiValueInput<int16_t> cfg_SEICTILut1(0, 128, 0, MAX_CTI_LUT_SIZE + 1); - SMultiValueInput<int16_t> cfg_SEICTILut2(0, 128, 0, MAX_CTI_LUT_SIZE + 1); +#if RExt__HIGH_BIT_DEPTH_SUPPORT + SMultiValueInput<Pel> cfg_SEICTILut0(0, ((1 << (2 + 16 - 1)) - 1), 0, MAX_CTI_LUT_SIZE + 1); + SMultiValueInput<Pel> cfg_SEICTILut1(0, ((1 << (2 + 16 - 1)) - 1), 0, MAX_CTI_LUT_SIZE + 1); + SMultiValueInput<Pel> cfg_SEICTILut2(0, ((1 << (2 + 16 - 1)) - 1), 0, MAX_CTI_LUT_SIZE + 1); +#else + SMultiValueInput<Pel> cfg_SEICTILut0(0, ((1 << (2 + 12 - 1)) - 1), 0, MAX_CTI_LUT_SIZE + 1); + SMultiValueInput<Pel> cfg_SEICTILut1(0, ((1 << (2 + 12 - 1)) - 1), 0, MAX_CTI_LUT_SIZE + 1); + SMultiValueInput<Pel> cfg_SEICTILut2(0, ((1 << (2 + 12 - 1)) - 1), 0, MAX_CTI_LUT_SIZE + 1); +#endif SMultiValueInput<bool> cfg_timeCodeSeiTimeStampFlag (0, 1, 0, MAX_TIMECODE_SEI_SETS); SMultiValueInput<bool> cfg_timeCodeSeiNumUnitFieldBasedFlag(0, 1, 0, MAX_TIMECODE_SEI_SETS); SMultiValueInput<int> cfg_timeCodeSeiCountingType (0, 6, 0, MAX_TIMECODE_SEI_SETS); diff --git a/source/Lib/CommonLib/SEIColourTransform.cpp b/source/Lib/CommonLib/SEIColourTransform.cpp index 280ea954a..315e9846d 100644 --- a/source/Lib/CommonLib/SEIColourTransform.cpp +++ b/source/Lib/CommonLib/SEIColourTransform.cpp @@ -96,7 +96,7 @@ void SEIColourTransformApply::generateColourTransfLUTs() uint8_t numComp = m_chromaFormat ? MAX_NUM_COMPONENT : 1; int numPreLutPoints = 1 << m_pColourTransfParams->m_log2NumberOfPointsPerLut; int dynamicRange = 1 << m_bitDepth; - const uint32_t orgCW = dynamicRange / numPreLutPoints; + const int orgCW = dynamicRange / numPreLutPoints; int scalingPreLut = 1 << ( 11 - (int)floorLog2(orgCW) ); // scale-up values from cfg file (chroma preLut is scaled down in cfg) std::vector<Pel> pivotInPoints; -- GitLab