From abb33ff2cff166bc29661a5dc9f4acfbf647fc15 Mon Sep 17 00:00:00 2001
From: LI Jingya <jingya.li@sg.panasonic.com>
Date: Mon, 6 Jan 2020 16:09:26 +0800
Subject: [PATCH] add subpic sps syntax to cfg file and correct coding format
 (open bracket starting with new line)

---
 source/App/EncoderApp/EncApp.cpp    |  9 ++++++---
 source/App/EncoderApp/EncAppCfg.cpp | 21 ++++++++++++++-------
 source/Lib/DecoderLib/VLCReader.cpp |  3 ++-
 source/Lib/EncoderLib/EncLib.cpp    | 12 ++++++++----
 source/Lib/EncoderLib/VLCWriter.cpp |  3 ++-
 5 files changed, 32 insertions(+), 16 deletions(-)

diff --git a/source/App/EncoderApp/EncApp.cpp b/source/App/EncoderApp/EncApp.cpp
index ad4095545..cb3454f71 100644
--- a/source/App/EncoderApp/EncApp.cpp
+++ b/source/App/EncoderApp/EncApp.cpp
@@ -390,7 +390,8 @@ void EncApp::xInitLibCfg()
   m_cEncLib.setCTUSize                                           ( m_uiCTUSize );
 #if JVET_P0171_SUBPICTURE_LAYOUT
   m_cEncLib.setSubPicPresentFlag                                 ( m_subPicPresentFlag );
-  if(m_subPicPresentFlag){
+  if(m_subPicPresentFlag)
+  {
     m_cEncLib.setNumSubPics                                      ( m_numSubPics );
     for (int i = 0; i < m_numSubPics; i++)
     {
@@ -403,9 +404,11 @@ void EncApp::xInitLibCfg()
     }
   }
   m_cEncLib.setSubPicIdPresentFlag                               ( m_subPicIdPresentFlag );
-  if (m_subPicIdPresentFlag) {
+  if (m_subPicIdPresentFlag) 
+  {
     m_cEncLib.setSubPicIdSignallingPresentFlag                   ( m_subPicIdSignallingPresentFlag );
-    if(m_subPicIdSignallingPresentFlag){
+    if(m_subPicIdSignallingPresentFlag)
+    {
       m_cEncLib.setSubPicIdLen                                   ( m_subPicIdLen );
       for (int i = 0; i < m_numSubPics; i++)
       {
diff --git a/source/App/EncoderApp/EncAppCfg.cpp b/source/App/EncoderApp/EncAppCfg.cpp
index 4d5fad737..a8f331907 100644
--- a/source/App/EncoderApp/EncAppCfg.cpp
+++ b/source/App/EncoderApp/EncAppCfg.cpp
@@ -1927,12 +1927,15 @@ bool EncAppCfg::parseCfg( int argc, char* argv[] )
     m_subPicTreatedAsPicFlag            = cfg_subPicTreatedAsPicFlag.values;
     m_loopFilterAcrossSubpicEnabledFlag = cfg_loopFilterAcrossSubpicEnabledFlag.values;
     m_subPicId                          = cfg_subPicId.values;
-    for(int i = 0; i < m_numSubPics; i++){
+    for(int i = 0; i < m_numSubPics; i++)
+    {
       CHECK(m_subPicCtuTopLeftX[i] + m_subPicWidth[i] > (m_iSourceWidth + m_uiCTUSize - 1) / m_uiCTUSize, "subpicture must not exceed picture boundary");
       CHECK(m_subPicCtuTopLeftY[i] + m_subPicHeight[i] > (m_iSourceHeight + m_uiCTUSize - 1) / m_uiCTUSize, "subpicture must not exceed picture boundary");
     }
-    if (m_subPicIdPresentFlag) {
-      if (m_subPicIdSignallingPresentFlag) {
+    if (m_subPicIdPresentFlag) 
+    {
+      if (m_subPicIdSignallingPresentFlag) 
+      {
         CHECK( m_subPicIdLen > 16, "sibpic ID length must not exceed 16 bits" );
       }
     }
@@ -4374,9 +4377,11 @@ void EncAppCfg::xPrintParameter()
   msg( DETAILS, "CU size / depth / total-depth          : %d / %d / %d\n", m_uiMaxCUWidth, m_uiMaxCUDepth, m_uiMaxCodingDepth );
 #if JVET_P0171_SUBPICTURE_LAYOUT
   msg(DETAILS, "subpicture present flag                            : %d\n", m_subPicPresentFlag);
-  if (m_subPicPresentFlag) {
+  if (m_subPicPresentFlag) 
+  {
     msg(DETAILS, "number of subpictures                            : %d\n", m_numSubPics);
-    for (int i = 0; i < m_numSubPics; i++) {
+    for (int i = 0; i < m_numSubPics; i++) 
+    {
       msg(DETAILS, "[%d]th subpictures location                           :[%d %d]\n", i, m_subPicCtuTopLeftX[i], m_subPicCtuTopLeftY[i]);
       msg(DETAILS, "[%d]th subpictures size                           :[%d %d]\n", i, m_subPicWidth[i], m_subPicHeight[i]);
       msg(DETAILS, "[%d]th subpictures treated as picture flag                           :%d\n", i, m_subPicTreatedAsPicFlag);
@@ -4385,9 +4390,11 @@ void EncAppCfg::xPrintParameter()
     }
   }
   msg(DETAILS, "subpicture ID present flag                            : %d\n", m_subPicIdPresentFlag);
-  if (m_subPicIdPresentFlag) {
+  if (m_subPicIdPresentFlag) 
+  {
     msg(DETAILS, "subpicture ID signalling present flag                            : %d\n", m_subPicIdSignallingPresentFlag);
-    for (int i = 0; i < m_numSubPics; i++) {
+    for (int i = 0; i < m_numSubPics; i++) 
+    {
       msg(DETAILS, "[%d]th subpictures ID length                           :%d\n", i, m_subPicIdLen);
       msg(DETAILS, "[%d]th subpictures ID                          :%d\n", i, m_subPicId);
 
diff --git a/source/Lib/DecoderLib/VLCReader.cpp b/source/Lib/DecoderLib/VLCReader.cpp
index 28ee3fb20..592161cfa 100644
--- a/source/Lib/DecoderLib/VLCReader.cpp
+++ b/source/Lib/DecoderLib/VLCReader.cpp
@@ -1524,7 +1524,8 @@ void HLSyntaxReader::parseSPS(SPS* pcSPS)
 
 #if JVET_P1006_PICTURE_HEADER
 #if JVET_P0171_SUBPICTURE_LAYOUT
-  if (pcSPS->getSubPicPresentFlag()) {
+  if (pcSPS->getSubPicPresentFlag()) 
+  {
     READ_CODE(8, uiCode, "sps_num_subpics_minus1"); pcSPS->setNumSubPics(uiCode + 1);
     for (int picIdx = 0; picIdx < pcSPS->getNumSubPics(); picIdx++)
     {
diff --git a/source/Lib/EncoderLib/EncLib.cpp b/source/Lib/EncoderLib/EncLib.cpp
index eb203b40c..1ebcf878c 100644
--- a/source/Lib/EncoderLib/EncLib.cpp
+++ b/source/Lib/EncoderLib/EncLib.cpp
@@ -1687,9 +1687,11 @@ void EncLib::xInitSPS(SPS &sps)
 #if JVET_P1006_PICTURE_HEADER
 #if JVET_P0171_SUBPICTURE_LAYOUT
   sps.setSubPicPresentFlag(m_subPicPresentFlag);
-  if (m_subPicPresentFlag) {
+  if (m_subPicPresentFlag) 
+  {
     sps.setNumSubPics(m_numSubPics);
-    for (int i = 0; i < m_numSubPics; i++) {
+    for (int i = 0; i < m_numSubPics; i++) 
+    {
       sps.setSubPicCtuTopLeftX(i, m_subPicCtuTopLeftX[i] );
       sps.setSubPicCtuTopLeftY(i, m_subPicCtuTopLeftY[i]);
       sps.setSubPicWidth(i, m_subPicWidth[i]);
@@ -1700,9 +1702,11 @@ void EncLib::xInitSPS(SPS &sps)
   }
 #endif
   sps.setSubPicIdPresentFlag(m_subPicIdPresentFlag);
-  if (m_subPicIdPresentFlag) {
+  if (m_subPicIdPresentFlag) 
+  {
     sps.setSubPicIdSignallingPresentFlag(m_subPicIdSignallingPresentFlag);
-    if (m_subPicIdSignallingPresentFlag){
+    if (m_subPicIdSignallingPresentFlag)
+    {
       sps.setSubPicIdLen(m_subPicIdLen);
       for (int i = 0; i < m_numSubPics; i++)
   {
diff --git a/source/Lib/EncoderLib/VLCWriter.cpp b/source/Lib/EncoderLib/VLCWriter.cpp
index 93b1e95af..6bdb6490c 100644
--- a/source/Lib/EncoderLib/VLCWriter.cpp
+++ b/source/Lib/EncoderLib/VLCWriter.cpp
@@ -965,7 +965,8 @@ void HLSWriter::codeSPS( const SPS* pcSPS )
 #if JVET_P0126_SIGNALLING_SUBPICID
   WRITE_FLAG(pcSPS->getSubPicPresentFlag(), "subpics_present_flag");
 #if JVET_P0171_SUBPICTURE_LAYOUT
-  if(pcSPS->getSubPicPresentFlag()){
+  if(pcSPS->getSubPicPresentFlag())
+  {
     WRITE_CODE(pcSPS->getNumSubPics() - 1, 8, "sps_num_subpics_minus1");
     for (int picIdx = 0; picIdx < pcSPS->getNumSubPics(); picIdx++)
     {
-- 
GitLab