diff --git a/source/Lib/CommonLib/TypeDef.h b/source/Lib/CommonLib/TypeDef.h index a680e7e66af30e314cec0530d374ca02f91b88b5..d220ef4c9e94ddc0e961df01a66a88520e3b6018 100644 --- a/source/Lib/CommonLib/TypeDef.h +++ b/source/Lib/CommonLib/TypeDef.h @@ -50,6 +50,8 @@ #include <assert.h> #include <cassert> +#define JVET_O0284_CONDITION_SMVD_MVDL1ZEROFLAG 1 // JVET-O0284: condition sym_mvd_flag on mvd_l1_zero_flag + #define JVET_O0052_TU_LEVEL_CTX_CODED_BIN_CONSTRAINT 1 // JVET-O0052 Method-1: TU-level context coded bin constraint #define JVET_O0105_ICT 1 // JVET-O0105: inter-chroma transform (ICT) as extension of joint chroma coding (JCC) diff --git a/source/Lib/DecoderLib/DecLib.cpp b/source/Lib/DecoderLib/DecLib.cpp index 95e7efab246ba7969297de20adaa67512ab9b195..97c4ca79b7e28867645c19b77cd431ba0a46d413 100644 --- a/source/Lib/DecoderLib/DecLib.cpp +++ b/source/Lib/DecoderLib/DecLib.cpp @@ -1207,6 +1207,9 @@ bool DecLib::xDecodeSlice(InputNALUnit &nalu, int &iSkipFrame, int iPOCLastDispl } if (pcSlice->getSPS()->getUseSMVD() && pcSlice->getCheckLDC() == false +#if JVET_O0284_CONDITION_SMVD_MVDL1ZEROFLAG + && pcSlice->getMvdL1ZeroFlag() == false +#endif ) { int currPOC = pcSlice->getPOC(); diff --git a/source/Lib/EncoderLib/EncGOP.cpp b/source/Lib/EncoderLib/EncGOP.cpp index 6297bd7becfdbbaddac05783fbeaa06317d07b34..a07276b9c61740ab8c8960c12e085891de7f6c9d 100644 --- a/source/Lib/EncoderLib/EncGOP.cpp +++ b/source/Lib/EncoderLib/EncGOP.cpp @@ -1804,6 +1804,9 @@ void EncGOP::compressGOP( int iPOCLast, int iNumPicRcvd, PicList& rcListPic, } if ( pcSlice->getSPS()->getUseSMVD() && pcSlice->getCheckLDC() == false +#if JVET_O0284_CONDITION_SMVD_MVDL1ZEROFLAG + && pcSlice->getMvdL1ZeroFlag() == false +#endif ) { int currPOC = pcSlice->getPOC();