diff --git a/source/App/EncoderApp/EncAppCfg.cpp b/source/App/EncoderApp/EncAppCfg.cpp
index 4e8edd2661dcdf1e31ae09771b7c073bf08441fd..e46fe7c65b12f9407ca3abadfc14d3bc3022f554 100644
--- a/source/App/EncoderApp/EncAppCfg.cpp
+++ b/source/App/EncoderApp/EncAppCfg.cpp
@@ -2605,6 +2605,15 @@ bool EncAppCfg::xCheckParameter()
     }
 #endif
   }
+#if JVET_N0353_INDEP_BUFF_TIME_SEI
+  if ( m_pictureTimingSEIEnabled && (!m_bufferingPeriodSEIEnabled))
+  {
+    msg( WARNING, "****************************************************************************\n");
+    msg( WARNING, "** WARNING: Picture Timing SEI requires Buffering Period SEI. Disabling.  **\n");
+    msg( WARNING, "****************************************************************************\n");
+    m_pictureTimingSEIEnabled = false;
+  }
+#endif
 
   if(m_crossComponentPredictionEnabledFlag && (m_chromaFormatIDC != CHROMA_444))
   {
diff --git a/source/Lib/EncoderLib/EncGOP.cpp b/source/Lib/EncoderLib/EncGOP.cpp
index a5183461ba68b0b410e8a59b4c05c74169493feb..034a4558b99e1c5d2363b116f4eefa8978684dba 100644
--- a/source/Lib/EncoderLib/EncGOP.cpp
+++ b/source/Lib/EncoderLib/EncGOP.cpp
@@ -808,6 +808,15 @@ void EncGOP::xCreateFrameFieldInfoSEI  (SEIMessages& seiMessages, Slice *slice,
 
 void EncGOP::xCreatePictureTimingSEI  (int IRAPGOPid, SEIMessages& seiMessages, SEIMessages& nestedSeiMessages, SEIMessages& duInfoSeiMessages, Slice *slice, bool isField, std::deque<DUData> &duData)
 {
+#if JVET_N0353_INDEP_BUFF_TIME_SEI
+  // Picture timing depends on buffering period. When either of those is not disabled,
+  // initialization would fail. Needs more cleanup after DU timing is integrated.
+  if (!(m_pcCfg->getPictureTimingSEIEnabled() && m_pcCfg->getBufferingPeriodSEIEnabled()))
+  {
+    return;
+  }
+#endif
+
   const HRDParameters *hrd = slice->getSPS()->getHrdParameters();
 
   // update decoding unit parameters