diff --git a/source/Lib/CommonLib/TypeDef.h b/source/Lib/CommonLib/TypeDef.h
index d9d0d3b7984774324d5e6a99764d6f5f4f7d67e5..516deaedc0469bd1cfe301eefad980d09bdfdafb 100644
--- a/source/Lib/CommonLib/TypeDef.h
+++ b/source/Lib/CommonLib/TypeDef.h
@@ -51,6 +51,8 @@
 #include <cassert>
 
 //########### place macros to be removed in next cycle below this line ###############
+#define JVET_S0133_PH_SYNTAX_OVERRIDE_ENC_FIX             1 // JVET-S0133: Encoder-only fix on the override of partition constriants in PH
+
 #define JVET_S0179_CONDITIONAL_SIGNAL_GCI                 1 // JVET-S0179: Conditional signalling of GCI fields
 
 #define JVET_S0049_ASPECT4                                1 // JVET-S0049 aspect 4: Constrain the value of pps_alf_info_in_ph_flag to be equal to 0 when the PH is in the SH
diff --git a/source/Lib/EncoderLib/EncGOP.cpp b/source/Lib/EncoderLib/EncGOP.cpp
index 2ca92dcdceda12c133a1796766ff6995a3be3ce4..b4b2044981a358d33d06b42ad417d1b877244e2e 100644
--- a/source/Lib/EncoderLib/EncGOP.cpp
+++ b/source/Lib/EncoderLib/EncGOP.cpp
@@ -2336,6 +2336,51 @@ void EncGOP::compressGOP( int iPOCLast, int iNumPicRcvd, PicList& rcListPic,
         m_uiPrevISlicePOC = pcSlice->getPOC();
         m_bInitAMaxBT = true;
       }
+#if JVET_S0133_PH_SYNTAX_OVERRIDE_ENC_FIX
+      bool identicalToSPS=true;
+      const SPS* sps =pcSlice->getSPS();
+
+      if (picHeader->getPicInterSliceAllowedFlag())
+      {
+        if (picHeader->getMinQTSize(pcSlice->getSliceType()) != pcSlice->getSPS()->getMinQTSize(pcSlice->getSliceType()) ||
+            picHeader->getMaxMTTHierarchyDepth(pcSlice->getSliceType()) != pcSlice->getSPS()->getMaxMTTHierarchyDepth() ||
+            picHeader->getMaxBTSize(pcSlice->getSliceType()) != pcSlice->getSPS()->getMaxBTSize() ||
+            picHeader->getMaxTTSize(pcSlice->getSliceType()) != pcSlice->getSPS()->getMaxTTSize()
+          )
+        {
+          identicalToSPS=false;
+        }
+      }
+
+      if (identicalToSPS && picHeader->getPicIntraSliceAllowedFlag())
+      {
+        if (picHeader->getMinQTSize(I_SLICE) != sps->getMinQTSize(I_SLICE) ||
+            picHeader->getMaxMTTHierarchyDepth(I_SLICE) != sps->getMaxMTTHierarchyDepthI() ||
+            picHeader->getMaxBTSize(I_SLICE) != sps->getMaxBTSizeI() ||
+            picHeader->getMaxTTSize(I_SLICE) != sps->getMaxTTSizeI()
+        )
+        {
+          identicalToSPS=false;
+        }
+
+        if (identicalToSPS && sps->getUseDualITree())
+        {
+          if (picHeader->getMinQTSize(I_SLICE, CHANNEL_TYPE_CHROMA) != sps->getMinQTSize(I_SLICE, CHANNEL_TYPE_CHROMA) ||
+              picHeader->getMaxMTTHierarchyDepth(I_SLICE, CHANNEL_TYPE_CHROMA) != sps->getMaxMTTHierarchyDepthIChroma() ||
+              picHeader->getMaxBTSize(I_SLICE, CHANNEL_TYPE_CHROMA) != sps->getMaxBTSizeIChroma() ||
+              picHeader->getMaxTTSize(I_SLICE, CHANNEL_TYPE_CHROMA) != sps->getMaxTTSizeIChroma()
+           )
+          {
+            identicalToSPS=false;
+          }
+        }
+      }
+
+      if (identicalToSPS)
+      {
+        picHeader->setSplitConsOverrideFlag(false);
+      }
+#endif
     }
 
     //  Slice info. refinement