diff --git a/source/App/EncoderApp/EncAppCfg.cpp b/source/App/EncoderApp/EncAppCfg.cpp index 4c09ef88a482e085c86fb0a813b1192dd1e1e3c1..2581193bd7a3f7684fa4048ff5782b39fc527bde 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 280ea954aaca241085c76205f940ff4cd4be8697..315e9846d4b48e5555b0d4c298b8d2c9dd0ea3a9 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;