diff --git a/source/App/EncoderApp/EncApp.cpp b/source/App/EncoderApp/EncApp.cpp index d99bd6d726e7dddaf5dd088e146812f60781b279..73b4e9caf08591cc783785cd0df160cd9713288f 100644 --- a/source/App/EncoderApp/EncApp.cpp +++ b/source/App/EncoderApp/EncApp.cpp @@ -1196,12 +1196,10 @@ void EncApp::xInitLibCfg() m_cEncLib.setTSRCdisableLL ( m_TSRCdisableLL ); m_cEncLib.setUseRecalculateQPAccordingToLambda ( m_recalculateQPAccordingToLambda ); m_cEncLib.setDCIEnabled ( m_DCIEnabled ); -#if JVET_Z0120_SHUTTER_INTERVAL_SEI m_cEncLib.setSiiSEIEnabled(m_siiSEIEnabled); m_cEncLib.setSiiSEINumUnitsInShutterInterval(m_siiSEINumUnitsInShutterInterval); m_cEncLib.setSiiSEITimeScale(m_siiSEITimeScale); m_cEncLib.setSiiSEISubLayerNumUnitsInSI(m_siiSEISubLayerNumUnitsInSI); -#endif m_cEncLib.setVuiParametersPresentFlag ( m_vuiParametersPresentFlag ); m_cEncLib.setSamePicTimingInAllOLS (m_samePicTimingInAllOLS); m_cEncLib.setAspectRatioInfoPresentFlag ( m_aspectRatioInfoPresentFlag); diff --git a/source/App/EncoderApp/EncAppCfg.cpp b/source/App/EncoderApp/EncAppCfg.cpp index a80b876be407baec9b183b333137d7362ebb00b5..75fe63c7a79d8aac1225482c4251a60413546e10 100644 --- a/source/App/EncoderApp/EncAppCfg.cpp +++ b/source/App/EncoderApp/EncAppCfg.cpp @@ -739,9 +739,7 @@ bool EncAppCfg::parseCfg( int argc, char* argv[] ) SMultiValueInput<uint32_t> cfg_FgcSEICompModelValueComp0 (0, 65535, 0, 256 * 6); SMultiValueInput<uint32_t> cfg_FgcSEICompModelValueComp1 (0, 65535, 0, 256 * 6); SMultiValueInput<uint32_t> cfg_FgcSEICompModelValueComp2 (0, 65535, 0, 256 * 6); -#if JVET_Z0120_SHUTTER_INTERVAL_SEI SMultiValueInput<unsigned> cfg_siiSEIInputNumUnitsInSI(0, std::numeric_limits<uint32_t>::max(), 0, 7); -#endif #if ENABLE_TRACING string sTracingRule; @@ -1423,11 +1421,9 @@ bool EncAppCfg::parseCfg( int argc, char* argv[] ) ("SEISARISarWidth", m_sariSarWidth, 0, "Specifies the Sample Aspect Ratio Width of Sample Aspect Ratio Information SEI messages, if extended SAR is chosen.") ("SEISARISarHeight", m_sariSarHeight, 0, "Specifies the Sample Aspect Ratio Height of Sample Aspect Ratio Information SEI messages, if extended SAR is chosen.") ("MCTSEncConstraint", m_MCTSEncConstraint, false, "For MCTS, constrain motion vectors at tile boundaries") -#if JVET_Z0120_SHUTTER_INTERVAL_SEI ("SEIShutterIntervalEnabled", m_siiSEIEnabled, false, "Controls if shutter interval information SEI message is enabled") ("SEISiiTimeScale", m_siiSEITimeScale, 27000000u, "Specifies sii_time_scale") ("SEISiiInputNumUnitsInShutterInterval", cfg_siiSEIInputNumUnitsInSI, cfg_siiSEIInputNumUnitsInSI, "Specifies sub_layer_num_units_in_shutter_interval") -#endif #if ENABLE_TRACING ("TraceChannelsList", bTracingChannelsList, false, "List all available tracing channels") @@ -3148,7 +3144,6 @@ bool EncAppCfg::parseCfg( int argc, char* argv[] ) #if JVET_Z0120_SII_SEI_PROCESSING m_ShutterFilterEnable = false; #endif -#if JVET_Z0120_SHUTTER_INTERVAL_SEI if (m_siiSEIEnabled) { assert(m_siiSEITimeScale >= 0 && m_siiSEITimeScale <= MAX_UINT); @@ -3224,7 +3219,6 @@ bool EncAppCfg::parseCfg( int argc, char* argv[] ) } #endif } -#endif if( m_costMode == COST_LOSSLESS_CODING ) diff --git a/source/App/EncoderApp/EncAppCfg.h b/source/App/EncoderApp/EncAppCfg.h index ad1cfa9848d8c5bcde2b4abbe072428ec86476cf..b19020732121bcb6336a994a365cf03e59851abb 100644 --- a/source/App/EncoderApp/EncAppCfg.h +++ b/source/App/EncoderApp/EncAppCfg.h @@ -842,12 +842,10 @@ protected: int m_ImvMode; ///< imv mode int m_Imv4PelFast; ///< imv 4-Pel fast mode -#if JVET_Z0120_SHUTTER_INTERVAL_SEI bool m_siiSEIEnabled; uint32_t m_siiSEINumUnitsInShutterInterval; uint32_t m_siiSEITimeScale; std::vector<uint32_t> m_siiSEISubLayerNumUnitsInSI; -#endif #if JVET_Z0120_SII_SEI_PROCESSING bool m_ShutterFilterEnable; ///< enable Pre-Filtering with Shutter Interval SEI std::string m_shutterIntervalPreFileName; ///< output Pre-Filtering video diff --git a/source/Lib/CommonLib/SEI.cpp b/source/Lib/CommonLib/SEI.cpp index d85b7a1f3e19dd2bfc4171dff995d2bfecc47bd6..28d6900bfef6791c1d3584f0a96ded95590df119 100644 --- a/source/Lib/CommonLib/SEI.cpp +++ b/source/Lib/CommonLib/SEI.cpp @@ -477,9 +477,7 @@ const char *SEI::getSEIMessageString(SEI::PayloadType payloadType) case SEI::EXTENDED_DRAP_INDICATION: return "Extended DRAP indication"; case SEI::CONSTRAINED_RASL_ENCODING: return "Constrained RASL encoding"; case SEI::VDI_SEI_ENVELOPE: return "Video decoding interface SEI envelope"; -#if JVET_Z0120_SHUTTER_INTERVAL_SEI case SEI::SHUTTER_INTERVAL_INFO: return "Shutter interval information"; -#endif #if JVET_Z0244 case SEI::NEURAL_NETWORK_POST_FILTER_CHARACTERISTICS: return "Neural network post-filter characteristics"; case SEI::NEURAL_NETWORK_POST_FILTER_ACTIVATION: return "Neural network post-filter activation"; diff --git a/source/Lib/CommonLib/SEI.h b/source/Lib/CommonLib/SEI.h index 8ec82d64d35cf41eff104709a6388ea47c7596d3..37caed90a3c218425bbcf511b8b88037f2b39c8a 100644 --- a/source/Lib/CommonLib/SEI.h +++ b/source/Lib/CommonLib/SEI.h @@ -91,9 +91,7 @@ public: EXTENDED_DRAP_INDICATION = 206, CONSTRAINED_RASL_ENCODING = 207, VDI_SEI_ENVELOPE = 208, -#if JVET_Z0120_SHUTTER_INTERVAL_SEI SHUTTER_INTERVAL_INFO = 209, -#endif #if JVET_Z0244 NEURAL_NETWORK_POST_FILTER_CHARACTERISTICS = 210, NEURAL_NETWORK_POST_FILTER_ACTIVATION = 211, @@ -108,7 +106,6 @@ public: virtual PayloadType payloadType() const = 0; }; -#if JVET_Z0120_SHUTTER_INTERVAL_SEI class SEIShutterIntervalInfo : public SEI { public: @@ -123,7 +120,6 @@ public: bool m_siiFixedSIwithinCLVS; std::vector<unsigned> m_siiSubLayerNumUnitsInSI; }; -#endif class SEIEquirectangularProjection : public SEI { diff --git a/source/Lib/CommonLib/TypeDef.h b/source/Lib/CommonLib/TypeDef.h index 20e19c4077a1cdc29919596cf3632b542d9631e1..506593623d66df6ad5e6e5347e1c23ad9dcf7a0c 100644 --- a/source/Lib/CommonLib/TypeDef.h +++ b/source/Lib/CommonLib/TypeDef.h @@ -54,7 +54,6 @@ //########### place macros to be removed in next cycle below this line ############### -#define JVET_Z0120_SHUTTER_INTERVAL_SEI 1 // JVET-Z0120 #define JVET_Z0244 1 // JVET-Z0244 #define JVET_Z0047_FG_IMPROVEMENT 1 // Improvements to the film grain analysis code diff --git a/source/Lib/DecoderLib/SEIread.cpp b/source/Lib/DecoderLib/SEIread.cpp index a5361316930b3bd41661180aea7b0431c550f300..fb1df28c9b427260154bc64b617b4ead310daed5 100644 --- a/source/Lib/DecoderLib/SEIread.cpp +++ b/source/Lib/DecoderLib/SEIread.cpp @@ -402,12 +402,10 @@ void SEIReader::xReadSEImessage(SEIMessages& seis, const NalUnitType nalUnitType sei = new SEIConstrainedRaslIndication; xParseSEIConstrainedRaslIndication((SEIConstrainedRaslIndication&) *sei, payloadSize, pDecodedMessageOutputStream); break; -#if JVET_Z0120_SHUTTER_INTERVAL_SEI case SEI::SHUTTER_INTERVAL_INFO: sei = new SEIShutterIntervalInfo; xParseSEIShutterInterval((SEIShutterIntervalInfo&)*sei, payloadSize, pDecodedMessageOutputStream); break; -#endif #if JVET_Z0244 case SEI::NEURAL_NETWORK_POST_FILTER_CHARACTERISTICS: sei = new SEINeuralNetworkPostFilterCharacteristics; @@ -548,7 +546,6 @@ void SEIReader::xParseSEIuserDataUnregistered(SEIuserDataUnregistered &sei, uint } } -#if JVET_Z0120_SHUTTER_INTERVAL_SEI void SEIReader::xParseSEIShutterInterval(SEIShutterIntervalInfo& sei, uint32_t payloadSize, std::ostream *pDecodedMessageOutputStream) { int32_t i; @@ -571,7 +568,6 @@ void SEIReader::xParseSEIShutterInterval(SEIShutterIntervalInfo& sei, uint32_t p } } } -#endif /** * parse bitstream bs and unpack a decoded picture hash SEI message diff --git a/source/Lib/DecoderLib/SEIread.h b/source/Lib/DecoderLib/SEIread.h index 4fcb24fb5c7ebad446b98af8adc20b1a31535b08..4df302ac31bec7afab0489b1dcb912578298a568 100644 --- a/source/Lib/DecoderLib/SEIread.h +++ b/source/Lib/DecoderLib/SEIread.h @@ -104,9 +104,7 @@ protected: void xParseSEIExtendedDrapIndication (SEIExtendedDrapIndication& sei, uint32_t payloadSize, std::ostream *pDecodedMessageOutputStream); void xParseSEIColourTransformInfo (SEIColourTransformInfo& sei, uint32_t payloadSize, std::ostream* pDecodedMessageOutputStream); void xParseSEIConstrainedRaslIndication (SEIConstrainedRaslIndication& sei, uint32_t payLoadSize, std::ostream *pDecodedMessageOutputStream); -#if JVET_Z0120_SHUTTER_INTERVAL_SEI void xParseSEIShutterInterval(SEIShutterIntervalInfo& sei, uint32_t payloadSize, std::ostream *pDecodedMessageOutputStream); -#endif #if JVET_Z0244 void xParseSEINNPostFilterCharacteristics(SEINeuralNetworkPostFilterCharacteristics& sei, uint32_t payloadSize, std::ostream *pDecodedMessageOutputStream); void xParseSEINNPostFilterActivation(SEINeuralNetworkPostFilterActivation& sei, uint32_t payloadSize, std::ostream *pDecodedMessageOutputStream); diff --git a/source/Lib/EncoderLib/EncCfg.h b/source/Lib/EncoderLib/EncCfg.h index 7da9694fd833c9a16b4589c5cc6b96d2c0bce0fc..7f4dfc04ed413c933d920e6ca4ea8682b133a3ba 100644 --- a/source/Lib/EncoderLib/EncCfg.h +++ b/source/Lib/EncoderLib/EncCfg.h @@ -657,12 +657,10 @@ protected: uint8_t m_preferredTransferCharacteristics; #endif -#if JVET_Z0120_SHUTTER_INTERVAL_SEI bool m_siiSEIEnabled; uint32_t m_siiSEINumUnitsInShutterInterval; uint32_t m_siiSEITimeScale; std::vector<uint32_t> m_siiSEISubLayerNumUnitsInSI; -#endif #if JVET_Z0244 bool m_nnPostFilterSEICharacteristicsEnabled; @@ -1761,7 +1759,6 @@ public: void setSubpicDecodedPictureHashType(HashType m) { m_subpicDecodedPictureHashType = m; } HashType getSubpicDecodedPictureHashType() const { return m_subpicDecodedPictureHashType; } -#if JVET_Z0120_SHUTTER_INTERVAL_SEI void setSiiSEIEnabled(bool b) { m_siiSEIEnabled = b; } bool getSiiSEIEnabled() { return m_siiSEIEnabled; } void setSiiSEINumUnitsInShutterInterval(uint32_t value) { m_siiSEINumUnitsInShutterInterval = value; } @@ -1772,7 +1769,6 @@ public: bool getSiiSEIFixedSIwithinCLVS() { return m_siiSEISubLayerNumUnitsInSI.empty(); } void setSiiSEISubLayerNumUnitsInSI(const std::vector<uint32_t>& b) { m_siiSEISubLayerNumUnitsInSI = b; } uint32_t getSiiSEISubLayerNumUnitsInSI(uint32_t idx) const { return m_siiSEISubLayerNumUnitsInSI[idx]; } -#endif #if JVET_Z0244 void setNNPostFilterSEICharacteristicsEnabled(bool enabledFlag) { m_nnPostFilterSEICharacteristicsEnabled = enabledFlag; } diff --git a/source/Lib/EncoderLib/EncGOP.cpp b/source/Lib/EncoderLib/EncGOP.cpp index 147a2b5f37ad784f2a301224aaf801b64c38b218..2b21e1024287afc8bd1a2d10bb7a6062794e9b7f 100644 --- a/source/Lib/EncoderLib/EncGOP.cpp +++ b/source/Lib/EncoderLib/EncGOP.cpp @@ -893,14 +893,12 @@ void EncGOP::xCreateIRAPLeadingSEIMessages (SEIMessages& seiMessages, const SPS SEIConstrainedRaslIndication* seiConstrainedRasl = new SEIConstrainedRaslIndication; seiMessages.push_back(seiConstrainedRasl); } -#if JVET_Z0120_SHUTTER_INTERVAL_SEI if (m_pcCfg->getSiiSEIEnabled()) { SEIShutterIntervalInfo *seiShutterInterval = new SEIShutterIntervalInfo; m_seiEncoder.initSEIShutterIntervalInfo(seiShutterInterval); seiMessages.push_back(seiShutterInterval); } -#endif #if JVET_Z0244 if (m_pcCfg->getNNPostFilterSEICharacteristicsEnabled()) { diff --git a/source/Lib/EncoderLib/SEIEncoder.cpp b/source/Lib/EncoderLib/SEIEncoder.cpp index d9b1e0751ac32bb08a2877c3a2e0d7e3ac0e99cb..c9dd13563195ec1778b0c77286acb3ab91a7a505 100644 --- a/source/Lib/EncoderLib/SEIEncoder.cpp +++ b/source/Lib/EncoderLib/SEIEncoder.cpp @@ -507,7 +507,6 @@ void SEIEncoder::initSEIExtendedDrapIndication(SEIExtendedDrapIndication *sei) } } -#if JVET_Z0120_SHUTTER_INTERVAL_SEI void SEIEncoder::initSEIShutterIntervalInfo(SEIShutterIntervalInfo *seiShutterIntervalInfo) { assert(m_isInitialized); @@ -528,7 +527,6 @@ void SEIEncoder::initSEIShutterIntervalInfo(SEIShutterIntervalInfo *seiShutterIn } } } -#endif template <typename T> static void readTokenValue(T &returnedValue, /// value returned diff --git a/source/Lib/EncoderLib/SEIEncoder.h b/source/Lib/EncoderLib/SEIEncoder.h index 5bf3dc31d701bb5ddebc8c597297b7c24950acc4..c0e59e1f59af6417af0590b34cb0021a7ade03b1 100644 --- a/source/Lib/EncoderLib/SEIEncoder.h +++ b/source/Lib/EncoderLib/SEIEncoder.h @@ -90,9 +90,7 @@ public: void initSEIColourTransformInfo(SEIColourTransformInfo* sei); void readAnnotatedRegionSEI(std::istream &fic, SEIAnnotatedRegions *seiAnnoRegion, bool &failed); void initSEIMultiviewViewPosition(SEIMultiviewViewPosition *sei); -#if JVET_Z0120_SHUTTER_INTERVAL_SEI void initSEIShutterIntervalInfo(SEIShutterIntervalInfo *sei); -#endif #if JVET_Z0244 void initSEINeuralNetworkPostFilterCharacteristics(SEINeuralNetworkPostFilterCharacteristics *sei, int filterIdx); void initSEINeuralNetworkPostFilterActivation(SEINeuralNetworkPostFilterActivation *sei); diff --git a/source/Lib/EncoderLib/SEIwrite.cpp b/source/Lib/EncoderLib/SEIwrite.cpp index b071bf79022cb5a93a5e9c3ea42a080e1791bd9d..909e068f7cf6497dfbcc90811f89f06277ed661a 100644 --- a/source/Lib/EncoderLib/SEIwrite.cpp +++ b/source/Lib/EncoderLib/SEIwrite.cpp @@ -157,11 +157,9 @@ void SEIWriter::xWriteSEIpayloadData(OutputBitstream &bs, const SEI& sei, HRD &h case SEI::CONSTRAINED_RASL_ENCODING: xWriteSEIConstrainedRaslIndication(*static_cast<const SEIConstrainedRaslIndication*>(&sei)); break; -#if JVET_Z0120_SHUTTER_INTERVAL_SEI case SEI::SHUTTER_INTERVAL_INFO: xWriteSEIShutterInterval(*static_cast<const SEIShutterIntervalInfo*>(&sei)); break; -#endif #if JVET_Z0244 case SEI::NEURAL_NETWORK_POST_FILTER_CHARACTERISTICS: xWriteSEINeuralNetworkPostFilterCharacteristics(*static_cast<const SEINeuralNetworkPostFilterCharacteristics*>(&sei)); @@ -1386,7 +1384,6 @@ void SEIWriter::xWriteSEIColourTransformInfo(const SEIColourTransformInfo& sei) } } -#if JVET_Z0120_SHUTTER_INTERVAL_SEI void SEIWriter::xWriteSEIShutterInterval(const SEIShutterIntervalInfo &sei) { WRITE_CODE(sei.m_siiTimeScale, 32, "sii_time_scale"); @@ -1404,7 +1401,6 @@ void SEIWriter::xWriteSEIShutterInterval(const SEIShutterIntervalInfo &sei) } } } -#endif void SEIWriter::xWriteSEIConstrainedRaslIndication(const SEIConstrainedRaslIndication& /*sei*/) { diff --git a/source/Lib/EncoderLib/SEIwrite.h b/source/Lib/EncoderLib/SEIwrite.h index 49e2b2c5d39462dfebeb2e90a5dc03855f96a41b..eabda01fd06cb9e461651d98487c2d0d0271e632 100644 --- a/source/Lib/EncoderLib/SEIwrite.h +++ b/source/Lib/EncoderLib/SEIwrite.h @@ -97,9 +97,7 @@ protected: void xWriteSEIContentColourVolume(const SEIContentColourVolume &sei); void xWriteSEIColourTransformInfo(const SEIColourTransformInfo& sei); void xWriteSEIAnnotatedRegions (const SEIAnnotatedRegions& sei); -#if JVET_Z0120_SHUTTER_INTERVAL_SEI void xWriteSEIShutterInterval(const SEIShutterIntervalInfo& sei); -#endif void xWriteSEIpayloadData(OutputBitstream &bs, const SEI& sei, HRD &hrd, const uint32_t temporalId); void xWriteByteAlign(); #if JVET_Z0244