From f1e306b27089c5fc7039298c59079d4df60d39f1 Mon Sep 17 00:00:00 2001
From: zhipin <zhipin.deng@bytedance.com>
Date: Wed, 15 Jul 2020 17:57:17 +0800
Subject: [PATCH] added encoder check and updated software manul

---
 doc/software-manual.tex          | 12 ++++++++++++
 source/App/EncoderApp/EncApp.cpp |  2 ++
 2 files changed, 14 insertions(+)

diff --git a/doc/software-manual.tex b/doc/software-manual.tex
index 59b73d677..132486b64 100644
--- a/doc/software-manual.tex
+++ b/doc/software-manual.tex
@@ -1072,6 +1072,18 @@ Specifies the value of one_slice_per_pic_constraint_flag
 Specifies the value of one_subpic_per_pic_constraint_flag
 \\
 
+\Option{ExplicitScaleListConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_explicit_scaling_list_constraint_flag
+\\
+
+\Option{VirtualBoundaryConstraintFlag} &
+%\ShortOption{\None} &
+\Default{false} &
+Specifies the value of gci_no_virtual_boundaries_constraint_flag
+\\
+
 \Option{FrameOnly} &
 %\ShortOption{\None} &
 \Default{false} &
diff --git a/source/App/EncoderApp/EncApp.cpp b/source/App/EncoderApp/EncApp.cpp
index 11af41352..308adde92 100644
--- a/source/App/EncoderApp/EncApp.cpp
+++ b/source/App/EncoderApp/EncApp.cpp
@@ -306,7 +306,9 @@ void EncApp::xInitLibCfg()
   m_cEncLib.setNoLmcsConstraintFlag                              ( !m_lmcsEnabled );
 #if JVET_S0050_GCI
   m_cEncLib.setNoExplicitScaleListConstraintFlag                 ( m_noExplicitScaleListConstraintFlag );
+  CHECK( m_noExplicitScaleListConstraintFlag && m_useScalingListId != SCALING_LIST_OFF, "Explicit scaling list shall be deactivated when m_noExplicitScaleListConstraintFlag is equal to 1");
   m_cEncLib.setNoVirtualBoundaryConstraintFlag                   ( m_noVirtualBoundaryConstraintFlag );
+  CHECK( m_noVirtualBoundaryConstraintFlag && m_virtualBoundariesEnabledFlag, "Virtuall boundaries shall be deactivated when m_noVirtualBoundaryConstraintFlag is equal to 1");
 #endif
 
   //====== Coding Structure ========
-- 
GitLab