Index: branches/SHM-6-dev/source/App/TAppDecoder/TAppDecTop.cpp
===================================================================
--- branches/SHM-6-dev/source/App/TAppDecoder/TAppDecTop.cpp	(revision 652)
+++ branches/SHM-6-dev/source/App/TAppDecoder/TAppDecTop.cpp	(revision 688)
@@ -694,12 +694,15 @@
           const Bool isTff = pcPicTop->isTopField();
 #if REPN_FORMAT_IN_VPS
-          UInt chromaFormatIdc = pcPic->getSlice(0)->getChromaFormatIdc();
-          Int xScal =  TComSPS::getWinUnitX( chromaFormatIdc ), yScal = TComSPS::getWinUnitY( chromaFormatIdc );
-          m_acTVideoIOYuvReconFile[layerId].write( pcPicTop->getPicYuvRec(), pcPicBottom->getPicYuvRec(),
-            conf.getWindowLeftOffset()  * xScal + defDisp.getWindowLeftOffset(),
-            conf.getWindowRightOffset() * xScal + defDisp.getWindowRightOffset(),
-            conf.getWindowTopOffset()   * yScal + defDisp.getWindowTopOffset(),
-            conf.getWindowBottomOffset()* yScal + defDisp.getWindowBottomOffset(), isTff );
-
+#if Q0200_CONFORMANCE_BL_SIZE
+Int xScal=1,yScal=1;
+#else
+UInt chromaFormatIdc = pcPic->getSlice(0)->getChromaFormatIdc();
+Int xScal =  TComSPS::getWinUnitX( chromaFormatIdc ), yScal = TComSPS::getWinUnitY( chromaFormatIdc );
+#endif
+m_acTVideoIOYuvReconFile[layerId].write( pcPicTop->getPicYuvRec(), pcPicBottom->getPicYuvRec(),
+conf.getWindowLeftOffset()  * xScal + defDisp.getWindowLeftOffset(),
+conf.getWindowRightOffset() * xScal + defDisp.getWindowRightOffset(),
+conf.getWindowTopOffset()   * yScal + defDisp.getWindowTopOffset(),
+conf.getWindowBottomOffset()* yScal + defDisp.getWindowBottomOffset(), isTff );
 #else
 #if O0194_DIFFERENT_BITDEPTH_EL_BL
@@ -798,12 +801,15 @@
           const Window &defDisp = m_respectDefDispWindow ? pcPic->getDefDisplayWindow() : Window();
 #if REPN_FORMAT_IN_VPS
-          UInt chromaFormatIdc = pcPic->getSlice(0)->getChromaFormatIdc();
-          Int xScal =  TComSPS::getWinUnitX( chromaFormatIdc ), yScal = TComSPS::getWinUnitY( chromaFormatIdc );
-          m_acTVideoIOYuvReconFile[layerId].write( pcPic->getPicYuvRec(),
-            conf.getWindowLeftOffset()  * xScal + defDisp.getWindowLeftOffset(),
-            conf.getWindowRightOffset() * xScal + defDisp.getWindowRightOffset(),
-            conf.getWindowTopOffset()   * yScal + defDisp.getWindowTopOffset(),
-            conf.getWindowBottomOffset()* yScal + defDisp.getWindowBottomOffset() );
-
+#if Q0200_CONFORMANCE_BL_SIZE
+Int xScal=1,yScal=1;
+#else
+UInt chromaFormatIdc = pcPic->getSlice(0)->getChromaFormatIdc();
+Int xScal =  TComSPS::getWinUnitX( chromaFormatIdc ), yScal = TComSPS::getWinUnitY( chromaFormatIdc );
+#endif
+m_acTVideoIOYuvReconFile[layerId].write( pcPic->getPicYuvRec(),
+conf.getWindowLeftOffset()  * xScal + defDisp.getWindowLeftOffset(),
+conf.getWindowRightOffset() * xScal + defDisp.getWindowRightOffset(),
+conf.getWindowTopOffset()   * yScal + defDisp.getWindowTopOffset(),
+conf.getWindowBottomOffset()* yScal + defDisp.getWindowBottomOffset() );
 #else
           m_acTVideoIOYuvReconFile[layerId].write( pcPic->getPicYuvRec(),
@@ -898,12 +904,15 @@
           const Bool isTff = pcPicTop->isTopField();
 #if REPN_FORMAT_IN_VPS
-          UInt chromaFormatIdc = pcPic->getSlice(0)->getChromaFormatIdc();
-          Int xScal =  TComSPS::getWinUnitX( chromaFormatIdc ), yScal = TComSPS::getWinUnitY( chromaFormatIdc );
-          m_acTVideoIOYuvReconFile[layerId].write( pcPicTop->getPicYuvRec(), pcPicBottom->getPicYuvRec(),
-            conf.getWindowLeftOffset()  *xScal + defDisp.getWindowLeftOffset(),
-            conf.getWindowRightOffset() *xScal + defDisp.getWindowRightOffset(),
-            conf.getWindowTopOffset()   *yScal + defDisp.getWindowTopOffset(),
-            conf.getWindowBottomOffset()*yScal + defDisp.getWindowBottomOffset(), isTff );
-
+#if Q0200_CONFORMANCE_BL_SIZE
+Int xScal=1,yScal=1;
+#else
+UInt chromaFormatIdc = pcPic->getSlice(0)->getChromaFormatIdc();
+Int xScal =  TComSPS::getWinUnitX( chromaFormatIdc ), yScal = TComSPS::getWinUnitY( chromaFormatIdc );
+#endif
+m_acTVideoIOYuvReconFile[layerId].write( pcPicTop->getPicYuvRec(), pcPicBottom->getPicYuvRec(),
+conf.getWindowLeftOffset()  *xScal + defDisp.getWindowLeftOffset(),
+conf.getWindowRightOffset() *xScal + defDisp.getWindowRightOffset(),
+conf.getWindowTopOffset()   *yScal + defDisp.getWindowTopOffset(),
+conf.getWindowBottomOffset()*yScal + defDisp.getWindowBottomOffset(), isTff );
 #else
 #if O0194_DIFFERENT_BITDEPTH_EL_BL
@@ -1005,12 +1014,15 @@
           const Window &defDisp = m_respectDefDispWindow ? pcPic->getDefDisplayWindow() : Window();
 #if REPN_FORMAT_IN_VPS
-          UInt chromaFormatIdc = pcPic->getSlice(0)->getChromaFormatIdc();
-          Int xScal =  TComSPS::getWinUnitX( chromaFormatIdc ), yScal = TComSPS::getWinUnitY( chromaFormatIdc );
-          m_acTVideoIOYuvReconFile[layerId].write( pcPic->getPicYuvRec(),
-            conf.getWindowLeftOffset()  *xScal + defDisp.getWindowLeftOffset(),
-            conf.getWindowRightOffset() *xScal + defDisp.getWindowRightOffset(),
-            conf.getWindowTopOffset()   *yScal + defDisp.getWindowTopOffset(),
-            conf.getWindowBottomOffset()*yScal + defDisp.getWindowBottomOffset() );
-
+#if Q0200_CONFORMANCE_BL_SIZE
+Int xScal=1,yScal=1;
+#else
+UInt chromaFormatIdc = pcPic->getSlice(0)->getChromaFormatIdc();
+Int xScal =  TComSPS::getWinUnitX( chromaFormatIdc ), yScal = TComSPS::getWinUnitY( chromaFormatIdc );
+#endif
+m_acTVideoIOYuvReconFile[layerId].write( pcPic->getPicYuvRec(),
+conf.getWindowLeftOffset()  *xScal + defDisp.getWindowLeftOffset(),
+conf.getWindowRightOffset() *xScal + defDisp.getWindowRightOffset(),
+conf.getWindowTopOffset()   *yScal + defDisp.getWindowTopOffset(),
+conf.getWindowBottomOffset()*yScal + defDisp.getWindowBottomOffset() );
 #else
           m_acTVideoIOYuvReconFile[layerId].write( pcPic->getPicYuvRec(),
@@ -1105,14 +1117,14 @@
     const Window &defDisp = m_respectDefDispWindow ? pic->getDefDisplayWindow() : Window();
     Int xScal =  1, yScal = 1;
-#if REPN_FORMAT_IN_VPS
-    UInt chromaFormatIdc = pic->getSlice(0)->getChromaFormatIdc();
-    xScal = TComSPS::getWinUnitX( chromaFormatIdc );
-    yScal = TComSPS::getWinUnitY( chromaFormatIdc );
-#endif
-    m_acTVideoIOYuvReconFile[layerIdx].write( pic->getPicYuvRec(),
-      conf.getWindowLeftOffset()  * xScal + defDisp.getWindowLeftOffset(),
-      conf.getWindowRightOffset() * xScal + defDisp.getWindowRightOffset(),
-      conf.getWindowTopOffset()   * yScal + defDisp.getWindowTopOffset(),
-      conf.getWindowBottomOffset()* yScal + defDisp.getWindowBottomOffset() );
+#if REPN_FORMAT_IN_VPS && !Q0200_CONFORMANCE_BL_SIZE
+UInt chromaFormatIdc = pic->getSlice(0)->getChromaFormatIdc();
+xScal = TComSPS::getWinUnitX( chromaFormatIdc );
+yScal = TComSPS::getWinUnitY( chromaFormatIdc );
+#endif
+m_acTVideoIOYuvReconFile[layerIdx].write( pic->getPicYuvRec(),
+conf.getWindowLeftOffset()  * xScal + defDisp.getWindowLeftOffset(),
+conf.getWindowRightOffset() * xScal + defDisp.getWindowRightOffset(),
+conf.getWindowTopOffset()   * yScal + defDisp.getWindowTopOffset(),
+conf.getWindowBottomOffset()* yScal + defDisp.getWindowBottomOffset() );
   }
   // update POC of display order
