Changeset 296 in 3DVCSoftware for trunk/source/App/TAppEncoder/TAppEncCfg.cpp


Ignore:
Timestamp:
20 Feb 2013, 22:07:43 (12 years ago)
Author:
tech
Message:

Reintegrated branch 5.1-dev0 rev. 295.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/App/TAppEncoder/TAppEncCfg.cpp

    r210 r296  
    220220 
    221221  /* File, I/O and source parameters */
    222   ("InputFile_%d,i_%d",       m_pchInputFileList,       (char *) 0 , MAX_VIEW_NUM , "original Yuv input file name %d")
    223   ("DepthInputFile_%d,di_%d", m_pchDepthInputFileList,  (char *) 0 , MAX_VIEW_NUM , "original Yuv depth input file name %d")
    224   ("ReconFile_%d,o_%d",       m_pchReconFileList,       (char *) 0 , MAX_VIEW_NUM , "reconstructed Yuv output file name %d")
    225   ("DepthReconFile_%d,do_%d", m_pchDepthReconFileList,  (char *) 0 , MAX_VIEW_NUM , "reconstructed Yuv depth output file name %d")
    226   ("BitstreamFile,b", cfg_BitstreamFile, string(""), "bitstream output file name")
    227   ("CodeDepthMaps",         m_bUsingDepthMaps, false, "Encode depth maps" )
    228   ("CodedCamParsPrecision", m_iCodedCamParPrecision, STD_CAM_PARAMETERS_PRECISION, "precision for coding of camera parameters (in units of 2^(-x) luma samples)" )
    229   ("LambdaModifier0,-LM0", m_adLambdaModifier[ 0 ], ( double )1.0, "Lambda modifier for temporal layer 0")
    230   ("LambdaModifier1,-LM1", m_adLambdaModifier[ 1 ], ( double )1.0, "Lambda modifier for temporal layer 1")
    231   ("LambdaModifier2,-LM2", m_adLambdaModifier[ 2 ], ( double )1.0, "Lambda modifier for temporal layer 2")
    232   ("LambdaModifier3,-LM3", m_adLambdaModifier[ 3 ], ( double )1.0, "Lambda modifier for temporal layer 3")
    233   ("SourceWidth,-wdt",      m_iSourceWidth,  0, "Source picture width")
    234   ("SourceHeight,-hgt",     m_iSourceHeight, 0, "Source picture height")
    235 #if PIC_CROPPING
    236   ("CroppingMode",          m_croppingMode,  0, "Cropping mode (0: no cropping, 1:automatic padding, 2: padding, 3:cropping")
    237   ("CropLeft",              m_cropLeft,      0, "Left cropping/padding for cropping mode 3")
    238   ("CropRight",             m_cropRight,     0, "Right cropping/padding for cropping mode 3")
    239   ("CropTop",               m_cropTop,       0, "Top cropping/padding for cropping mode 3")
    240   ("CropBottom",            m_cropBottom,    0, "Bottom cropping/padding for cropping mode 3")
    241   ("HorizontalPadding,-pdx",m_aiPad[0],      0, "horizontal source padding for cropping mode 2")
    242   ("VerticalPadding,-pdy",  m_aiPad[1],      0, "vertical source padding for cropping mode 2")
    243 #endif
     222  ("InputFile_%d,i_%d",       m_pchInputFileList,       (char *) 0 , MAX_VIEW_NUM ,   "original Yuv input file name %d")
     223  ("DepthInputFile_%d,di_%d", m_pchDepthInputFileList,  (char *) 0 , MAX_VIEW_NUM ,   "original Yuv depth input file name %d")
     224  ("ReconFile_%d,o_%d",       m_pchReconFileList,       (char *) 0 , MAX_VIEW_NUM ,   "reconstructed Yuv output file name %d")
     225  ("DepthReconFile_%d,do_%d", m_pchDepthReconFileList,  (char *) 0 , MAX_VIEW_NUM ,   "reconstructed Yuv depth output file name %d")
     226  ("BitstreamFile,b",         cfg_BitstreamFile,        string(""),                   "bitstream output file name")
     227  ("CodeDepthMaps",           m_bUsingDepthMaps,        false,                        "Encode depth maps" )
     228  ("CodedCamParsPrecision",   m_iCodedCamParPrecision,  STD_CAM_PARAMETERS_PRECISION, "precision for coding of camera parameters (in units of 2^(-x) luma samples)" )
     229  ("LambdaModifier0,-LM0",    m_adLambdaModifier[ 0 ],  ( double )1.0,                "Lambda modifier for temporal layer 0")
     230  ("LambdaModifier1,-LM1",    m_adLambdaModifier[ 1 ],  ( double )1.0,                "Lambda modifier for temporal layer 1")
     231  ("LambdaModifier2,-LM2",    m_adLambdaModifier[ 2 ],  ( double )1.0,                "Lambda modifier for temporal layer 2")
     232  ("LambdaModifier3,-LM3",    m_adLambdaModifier[ 3 ],  ( double )1.0,                "Lambda modifier for temporal layer 3")
     233  ("SourceWidth,-wdt",        m_iSourceWidth,           0,                            "Source picture width")
     234  ("SourceHeight,-hgt",       m_iSourceHeight,          0,                            "Source picture height")
     235  ("CroppingMode",            m_croppingMode,           0,                            "Cropping mode (0: no cropping, 1:automatic padding, 2: padding, 3:cropping")
     236  ("CropLeft",                m_cropLeft,               0,                            "Left cropping/padding for cropping mode 3")
     237  ("CropRight",               m_cropRight,              0,                            "Right cropping/padding for cropping mode 3")
     238  ("CropTop",                 m_cropTop,                0,                            "Top cropping/padding for cropping mode 3")
     239  ("CropBottom",              m_cropBottom,             0,                            "Bottom cropping/padding for cropping mode 3")
     240  ("HorizontalPadding,-pdx",  m_aiPad[0],               0,                            "horizontal source padding for cropping mode 2")
     241  ("VerticalPadding,-pdy",    m_aiPad[1],               0,                            "vertical source padding for cropping mode 2")
    244242  ("InputBitDepth",         m_uiInputBitDepth, 8u, "bit-depth of input file")
    245243  ("BitDepth",              m_uiInputBitDepth, 8u, "deprecated alias of InputBitDepth")
    246244  ("OutputBitDepth",        m_uiOutputBitDepth, 0u, "bit-depth of output file")
    247245  ("InternalBitDepth",      m_uiInternalBitDepth, 0u, "Internal bit-depth (BitDepth+BitIncrement)")
    248 #if !PIC_CROPPING
    249   ("HorizontalPadding,-pdx",m_aiPad[0],      0, "horizontal source padding size")
    250   ("VerticalPadding,-pdy",  m_aiPad[1],      0, "vertical source padding size")
    251   ("PAD",                   m_bUsePAD,   false, "automatic source padding of multiple of 16" )
    252 #endif
    253246  ("FrameRate,-fr",         m_iFrameRate,        0, "Frame rate")
    254247  ("FrameSkip,-fs",         m_FrameSkip,         0u, "Number of frames to skip at start of input YUV")
    255248  ("FramesToBeEncoded,f",   m_iFrameToBeEncoded, 0, "number of frames to be encoded (default=all)")
    256   ("FrameToBeEncoded",        m_iFrameToBeEncoded, 0, "deprecated alias of FramesToBeEncoded")
     249  ("FrameToBeEncoded",      m_iFrameToBeEncoded, 0, "deprecated alias of FramesToBeEncoded")
    257250 
    258251  ("NumberOfViews",         m_iNumberOfViews,    0, "Number of views")
     
    279272  ("DecodingRefreshType,-dr",m_iDecodingRefreshType, 0, "intra refresh, (0:none 1:CRA 2:IDR)")
    280273  ("GOPSize,g",      m_iGOPSize,      1, "GOP size of temporal structure")
    281 #if !H0567_DPB_PARAMETERS_PER_TEMPORAL_LAYER
    282   ("MaxNumberOfReorderPictures",   m_numReorderFrames,               -1, "Max. number of reorder pictures: -1: encoder determines value, >=0: set explicitly")
    283   ("MaxNumberOfReferencePictures", m_maxNumberOfReferencePictures, 6, "Max. number of reference pictures")
    284 #endif
    285274  ("ListCombination,-lc", m_bUseLComb, true, "combined reference list flag for uni-prediction in B-slices")
    286275  ("LCModification", m_bLCMod, false, "enables signalling of combined reference list derivation")
     
    321310  ("TemporalLayerQPOffset_L3,-tq3", m_aiTLayerQPOffset[3], MAX_QP + 1, "QP offset of temporal layer 3")
    322311 
    323 #if !H0566_TLA
    324   ("TLayeringBasedOnCodingStruct,-tl", m_bTLayering, false, "Temporal ID is set based on the hierarchical coding structure")
    325  
    326   ("TLayerSwitchingFlag_L0,-ts0", m_abTLayerSwitchingFlag[0], false, "Switching flag for temporal layer 0")
    327   ("TLayerSwitchingFlag_L1,-ts1", m_abTLayerSwitchingFlag[1], false, "Switching flag for temporal layer 1")
    328   ("TLayerSwitchingFlag_L2,-ts2", m_abTLayerSwitchingFlag[2], false, "Switching flag for temporal layer 2")
    329   ("TLayerSwitchingFlag_L3,-ts3", m_abTLayerSwitchingFlag[3], false, "Switching flag for temporal layer 3")
    330 #endif
    331312
    332313  /* Entropy coding parameters */
     
    340321  ("LoopFilterTcOffset_div2", m_loopFilterTcOffsetDiv2, 0 )
    341322#if LGE_ILLUCOMP_B0045
     323#if LGE_ILLUCOMP_DEPTH_C0046
     324  ("IlluCompEnable", m_abUseIC, std::vector<Bool>(2, true), "Enable illumination compensation for inter-view prediction")
     325#else
    342326  ("IlluCompEnable",                  m_bUseIC                  , true         , "Use illumination compensation for inter-view prediction" )
    343327#endif
    344 #if DBL_CONTROL
     328#endif
     329#if INTER_VIEW_VECTOR_SCALING_C0115
     330  ("IVSEnable",                       m_bUseIVS                 , true         , "Use inter-view vector scaling" )
     331#endif
    345332  ("DeblockingFilterControlPresent", m_DeblockingFilterControlPresent, true)
    346 #endif
    347333
    348334  /* Camera Paremetes */
     
    391377  ("PredDepthMapGen",  m_uiPredDepthMapGeneration, (UInt)0, "generation of prediction depth maps for motion data prediction" )
    392378#endif
    393 #if HHI_INTER_VIEW_MOTION_PRED
     379#if H3D_IVMP
    394380  ("MultiviewMvPred",  m_uiMultiviewMvPredMode,    (UInt)0, "usage of predicted depth maps" )
    395381  ("MultiviewMvRegMode",        m_uiMultiviewMvRegMode,         (UInt)0, "regularization mode for multiview motion vectors" )
    396382  ("MultiviewMvRegLambdaScale", m_dMultiviewMvRegLambdaScale, (Double)0, "lambda scale for multiview motion vector regularization" )
    397383#endif
    398 #if HHI_INTER_VIEW_RESIDUAL_PRED
     384#if H3D_IVRP
    399385  ("MultiviewResPred", m_uiMultiviewResPredMode,   (UInt)0, "usage of inter-view residual prediction" )
    400386#endif
     
    405391  ("ALF", m_abUseALF, std::vector<Bool>(1,true), "Enables ALF")
    406392  ("SAO", m_abUseSAO, std::vector<Bool>(1, true), "SAO")
    407 #if SAO_UNIT_INTERLEAVING
    408393  ("MaxNumOffsetsPerPic", m_maxNumOffsetsPerPic, 2048, "2048: default")   
    409394  ("SAOInterleaving", m_saoInterleavingFlag, false, "0: SAO Picture Mode, 1: SAO Interleaving ")   
    410 #endif
    411395
    412396  ("ALFEncodePassReduction", m_iALFEncodePassReduction, 0, "0:Original 16-pass, 1: 1-pass, 2: 2-pass encoding")
    413397
    414398  ("ALFMaxNumFilter,-ALFMNF", m_iALFMaxNumberFilters, 16, "16: No Constrained, 1-15: Constrained max number of filter")
    415 #if LCU_SYNTAX_ALF
    416399  ("ALFParamInSlice", m_bALFParamInSlice, false, "ALF parameters in 0: APS, 1: slice header")
    417400  ("ALFPicBasedEncode", m_bALFPicBasedEncode, true, "ALF picture-based encoding 0: false, 1: true")
    418 #endif
    419401
    420402    ("SliceMode",            m_iSliceMode,           0, "0: Disable all Recon slice limits, 1: Enforce max # of LCUs, 2: Enforce max # of bytes")
     
    439421    ("TileInfoPresentFlag",         m_iColumnRowInfoPresent,         1,          "0: tiles parameters are NOT present in the PPS. 1: tiles parameters are present in the PPS")
    440422    ("UniformSpacingIdc",           m_iUniformSpacingIdr,            0,          "Indicates if the column and row boundaries are distributed uniformly")
    441 #if !REMOVE_TILE_DEPENDENCE
    442     ("TileBoundaryIndependenceIdc", m_iTileBoundaryIndependenceIdr,  1,          "Indicates if the column and row boundaries break the prediction")
    443 #endif
    444423    ("NumTileColumnsMinus1",        m_iNumColumnsMinus1,             0,          "Number of columns in a picture minus 1")
    445424    ("ColumnWidthArray",            cfg_ColumnWidth,                 string(""), "Array containing ColumnWidth values in units of LCU")
     
    456435    ("ScalingList",                 m_useScalingListId,              0,          "0: no scaling list, 1: default scaling lists, 2: scaling lists specified in ScalingListFile")
    457436    ("ScalingListFile",             cfg_ScalingListFile,             string(""), "Scaling list file name")
    458 #if MULTIBITS_DATA_HIDING
    459437    ("SignHideFlag,-SBH",                m_signHideFlag, 1)
    460438    ("SignHideThreshold,-TSIG",          m_signHidingThreshold,         4)
    461 #endif
    462439#if HHI_DMM_WEDGE_INTRA || HHI_DMM_PRED_TEX
    463440  ("DMM",                         m_bUseDMM,                       false,      "depth model modes flag")
     
    477454  ("FEN", m_bUseFastEnc, false, "fast encoder setting")
    478455  ("ECU", m_bUseEarlyCU, false, "Early CU setting")
    479 #if FAST_DECISION_FOR_MRG_RD_COST
    480456  ("FDM", m_useFastDecisionForMerge, true, "Fast decision for Merge RD Cost")
    481 #endif
    482457  ("CFM", m_bUseCbfFastMode, false, "Cbf fast mode setting")
    483458#if HHI_INTERVIEW_SKIP
     
    617592  }
    618593
    619 #if PIC_CROPPING
    620594  switch (m_croppingMode)
    621595  {
     
    667641    }
    668642  }
    669 #else
    670 
    671   // compute source padding size
    672   if ( m_bUsePAD )
    673   {
    674     if ( m_iSourceWidth%MAX_PAD_SIZE )
    675     {
    676       m_aiPad[0] = (m_iSourceWidth/MAX_PAD_SIZE+1)*MAX_PAD_SIZE - m_iSourceWidth;
    677     }
    678    
    679     if ( m_iSourceHeight%MAX_PAD_SIZE )
    680     {
    681       m_aiPad[1] = (m_iSourceHeight/MAX_PAD_SIZE+1)*MAX_PAD_SIZE - m_iSourceHeight;
    682     }
    683   }
    684   m_iSourceWidth  += m_aiPad[0];
    685   m_iSourceHeight += m_aiPad[1];
    686 #endif
    687643 
    688644  // allocate slice-based dQP values
     
    890846  xConfirmPara( (m_iIntraPeriod > 0 && m_iIntraPeriod < m_iGOPSize) || m_iIntraPeriod == 0, "Intra period must be more than GOP size, or -1 , not 0" );
    891847  xConfirmPara( m_iDecodingRefreshType < 0 || m_iDecodingRefreshType > 2,                   "Decoding Refresh Type must be equal to 0, 1 or 2" );
    892 #if H0736_AVC_STYLE_QP_RANGE
    893848  xConfirmPara( m_aiQP[0] < -6 * ((Int)m_uiInternalBitDepth - 8) || m_aiQP[0] > 51,         "QP exceeds supported range (-QpBDOffsety to 51)" );
    894849  if ( m_aiQP.size() >= 2 )
     
    896851    xConfirmPara( m_aiQP[1] < -6 * ((Int)m_uiInternalBitDepth - 8) || m_aiQP[1] > 51,       "QP depth exceeds supported range (-QpBDOffsety to 51)" );
    897852  }
    898 #else
    899   xConfirmPara( m_aiQP[0] < 0 || m_aiQP[0] > 51,                                             "QP exceeds supported range (0 to 51)" );
    900   if ( m_aiQP.size() >= 2 )
    901   {
    902     xConfirmPara( m_aiQP[1] < 0 || m_aiQP[1] > 51,                                           "QP Depth exceeds supported range (0 to 51)" );
    903   }
    904 #endif
    905853  xConfirmPara( m_iALFEncodePassReduction < 0 || m_iALFEncodePassReduction > 2,             "ALFEncodePassReduction must be equal to 0, 1 or 2");
    906 #if LCU_SYNTAX_ALF
    907854  xConfirmPara( m_iALFMaxNumberFilters < 1,                                                 "ALFMaxNumFilter should be larger than 1"); 
    908 #else
    909   xConfirmPara( m_iALFMaxNumberFilters < 1 || m_iALFMaxNumberFilters > 16,                  "ALFMaxNumFilter exceeds supported range (1 to 16)"); 
    910 #endif
    911855  xConfirmPara( m_loopFilterBetaOffsetDiv2 < -13 || m_loopFilterBetaOffsetDiv2 > 13,          "Loop Filter Beta Offset div. 2 exceeds supported range (-13 to 13)");
    912856  xConfirmPara( m_loopFilterTcOffsetDiv2 < -13 || m_loopFilterTcOffsetDiv2 > 13,              "Loop Filter Tc Offset div. 2 exceeds supported range (-13 to 13)");
     
    934878  xConfirmPara( m_uiMaxCUWidth < 16,                                                        "Maximum partition width size should be larger than or equal to 16");
    935879  xConfirmPara( m_uiMaxCUHeight < 16,                                                       "Maximum partition height size should be larger than or equal to 16");
    936 #if PIC_CROPPING
    937880  xConfirmPara( (m_iSourceWidth  % (m_uiMaxCUWidth  >> (m_uiMaxCUDepth-1)))!=0,             "Resulting coded frame width must be a multiple of the minimum CU size");
    938881  xConfirmPara( (m_iSourceHeight % (m_uiMaxCUHeight >> (m_uiMaxCUDepth-1)))!=0,             "Resulting coded frame height must be a multiple of the minimum CU size");
    939 #else
    940   xConfirmPara( (m_iSourceWidth  % (m_uiMaxCUWidth  >> (m_uiMaxCUDepth-1)))!=0,             "Frame width should be multiple of minimum CU size");
    941   xConfirmPara( (m_iSourceHeight % (m_uiMaxCUHeight >> (m_uiMaxCUDepth-1)))!=0,             "Frame height should be multiple of minimum CU size");
    942 #endif
    943882 
    944883  xConfirmPara( m_uiQuadtreeTULog2MinSize < 2,                                        "QuadtreeTULog2MinSize must be 2 or greater.");
     
    967906  xConfirmPara    ( m_uiPredDepthMapGeneration >= 2 && !m_bUsingDepthMaps,            "PredDepthMapGen >= 2 requires CodeDepthMaps = 1" );
    968907#endif
    969 #if HHI_INTER_VIEW_MOTION_PRED
     908#if H3D_IVMP
    970909  xConfirmPara    ( m_uiMultiviewMvPredMode > 7,                                      "MultiviewMvPred must be less than or equal to 7" );
    971910  xConfirmPara    ( m_uiMultiviewMvPredMode > 0 && m_uiPredDepthMapGeneration == 0 ,  "MultiviewMvPred > 0 requires PredDepthMapGen > 0" );
     
    977916  }
    978917#endif
    979 #if HHI_INTER_VIEW_RESIDUAL_PRED
     918#if H3D_IVRP
    980919  xConfirmPara    ( m_uiMultiviewResPredMode > 1,                                     "MultiviewResPred must be less than or equal to 1" );
    981920  xConfirmPara    ( m_uiMultiviewResPredMode > 0 && m_uiPredDepthMapGeneration == 0 , "MultiviewResPred > 0 requires PredDepthMapGen > 0" );
     
    998937  }
    999938#if ADAPTIVE_QP_SELECTION
    1000 #if H0736_AVC_STYLE_QP_RANGE
    1001939  xConfirmPara( m_bUseAdaptQpSelect == true && m_aiQP[0] < 0,                                              "AdaptiveQpSelection must be disabled when QP < 0.");
    1002940  xConfirmPara( m_bUseAdaptQpSelect == true && m_aiQP[1] < 0,                                              "AdaptiveQpSelection must be disabled when QP < 0.");
    1003941  xConfirmPara( m_bUseAdaptQpSelect == true && (m_iChromaQpOffset !=0 || m_iChromaQpOffset2nd != 0 ),  "AdaptiveQpSelection must be disabled when ChromaQpOffset is not equal to 0.");
    1004 #endif
    1005942#endif
    1006943
     
    1013950  }
    1014951
    1015 #if FIXED_NUMBER_OF_TILES_SLICE_MODE
    1016952  xConfirmPara( m_iSliceMode < 0 || m_iSliceMode > 3, "SliceMode exceeds supported range (0 to 3)" );
    1017 #endif
    1018953  if (m_iSliceMode!=0)
    1019954  {
    1020955    xConfirmPara( m_iSliceArgument < 1 ,         "SliceArgument should be larger than or equal to 1" );
    1021956  }
    1022 #if FIXED_NUMBER_OF_TILES_SLICE_MODE
    1023957  if (m_iSliceMode==3)
    1024958  {
    1025959    xConfirmPara( m_iSliceGranularity > 0 ,      "When SliceMode == 3 is chosen, the SliceGranularity must be 0" );
    1026960  }
    1027 #endif
    1028961  xConfirmPara( m_iEntropySliceMode < 0 || m_iEntropySliceMode > 2, "EntropySliceMode exceeds supported range (0 to 2)" );
    1029962  if (m_iEntropySliceMode!=0)
     
    1035968  xConfirmPara( m_iSliceGranularity > m_iMaxCuDQPDepth, "SliceGranularity must be smaller smaller than or equal to maximum dqp depth" );
    1036969
    1037 #if NO_COMBINED_PARALLEL
    1038970  bool tileFlag = (m_iNumColumnsMinus1 > 0 || m_iNumRowsMinus1 > 0 );
    1039971  xConfirmPara( tileFlag && m_iEntropySliceMode,            "Tile and Entropy Slice can not be applied together");
    1040972  xConfirmPara( tileFlag && m_iWaveFrontSynchro,            "Tile and Wavefront can not be applied together");
    1041973  xConfirmPara( m_iWaveFrontSynchro && m_iEntropySliceMode, "Wavefront and Entropy Slice can not be applied together"); 
    1042 #endif
    1043974
    1044975  // max CU width and height should be power of 2
     
    12321163      for( Int i = 0; i < MAX_GOP; i++ ) { isOK[i] = false; }
    12331164      Int numOK = 0;
    1234 #if !H0567_DPB_PARAMETERS_PER_TEMPORAL_LAYER
    1235       Int numReorderFramesRequired=0;
    1236       m_maxNumberOfReferencePictures=0;
    1237       Int lastDisp = -1;
    1238 #endif
    12391165      m_extraRPSs[viewId] = 0;
    12401166      //start looping through frames in coding order until we can verify that the GOP structure is correct.
     
    14201346            }
    14211347          }
    1422 #if !H0567_DPB_PARAMETERS_PER_TEMPORAL_LAYER
    1423           if(m_maxNumberOfReferencePictures<numRefs)
    1424           {
    1425             m_maxNumberOfReferencePictures=numRefs;
    1426           }
    1427 #endif
    14281348          refList[numRefs] = curPOC;
    14291349          numRefs++;
    1430 #if !H0567_DPB_PARAMETERS_PER_TEMPORAL_LAYER
    1431           Int nonDisplayed=0;
    1432           for(Int i=0; i<numRefs; i++)
    1433           {
    1434             if(refList[i]==lastDisp+1)
    1435             {
    1436               lastDisp=refList[i];
    1437               i=0;
    1438             }
    1439           }
    1440           for(Int i=0; i<numRefs; i++)
    1441           {
    1442             if(refList[i]>lastDisp)
    1443             {
    1444               nonDisplayed++;
    1445             }
    1446           }
    1447           if(nonDisplayed>numReorderFramesRequired)
    1448           {
    1449             numReorderFramesRequired=nonDisplayed;
    1450           }
    1451 #endif
    14521350        }
    14531351        checkGOP++;
    14541352      }
    1455 #if !H0567_DPB_PARAMETERS_PER_TEMPORAL_LAYER
    1456       if (m_numReorderFrames == -1)
    1457       {
    1458         m_numReorderFrames = numReorderFramesRequired;
    1459       }
    1460 #endif
    14611353      xConfirmPara( errorGOP, "Invalid GOP structure given" );
    1462 #if H0566_TLA
    14631354      m_maxTempLayer[viewId] = 1;
    1464 #endif
    14651355      for( Int i = 0; i < m_iGOPSize; i++ )
    14661356      {
    1467 #if H0566_TLA
    14681357        if( m_GOPListsMvc[viewId][i].m_temporalId >= m_maxTempLayer[viewId] )
    14691358        {
    14701359          m_maxTempLayer[viewId] = m_GOPListsMvc[viewId][i].m_temporalId + 1;
    14711360        }
    1472 #endif
    14731361        xConfirmPara( m_GOPListsMvc[viewId][i].m_sliceType != 'B' && m_GOPListsMvc[viewId][i].m_sliceType != 'P', "Slice type must be equal to B or P" );
    14741362      }
    14751363
    1476 #if H0567_DPB_PARAMETERS_PER_TEMPORAL_LAYER
    14771364      for( Int i = 0; i < MAX_TLAYER; i++ )
    14781365      {
     
    15311418        m_maxDecPicBuffering[viewId][MAX_TLAYER-1] = m_numReorderPics[viewId][MAX_TLAYER-1];
    15321419      }
    1533 #endif
    1534 
    1535 #if H0567_DPB_PARAMETERS_PER_TEMPORAL_LAYER
     1420
    15361421      xConfirmPara( m_bUseLComb == false && m_numReorderPics[viewId][MAX_TLAYER-1] != 0, "ListCombination can only be 0 in low delay coding (more precisely when L0 and L1 are identical)" );  // Note however this is not the full necessary condition as ref_pic_list_combination_flag can only be 0 if L0 == L1.
    1537 #else
    1538       xConfirmPara( m_bUseLComb==false && m_numReorderFrames!=0, "ListCombination can only be 0 in low delay coding (more precisely when L0 and L1 are identical)" );  // Note however this is not the full necessary condition as ref_pic_list_combination_flag can only be 0 if L0 == L1.
    1539       xConfirmPara( m_numReorderFrames < numReorderFramesRequired, "For the used GOP the encoder requires more pictures for reordering than specified in MaxNumberOfReorderPictures" );
    1540 #endif
    15411422    }
    15421423  }
     
    16481529    }
    16491530  }
    1650 #if PIC_CROPPING
    16511531  printf("Real     Format              : %dx%d %dHz\n", m_iSourceWidth - m_cropLeft - m_cropRight, m_iSourceHeight - m_cropTop - m_cropBottom, m_iFrameRate );
    1652 #else
    1653   printf("Real     Format              : %dx%d %dHz\n", m_iSourceWidth - m_aiPad[0], m_iSourceHeight-m_aiPad[1], m_iFrameRate );
    1654 #endif
    16551532  printf("Internal Format              : %dx%d %dHz\n", m_iSourceWidth, m_iSourceHeight, m_iFrameRate );
    16561533  printf("Frame index                  : %u - %d (%d frames)\n", m_FrameSkip, m_FrameSkip+m_iFrameToBeEncoded-1, m_iFrameToBeEncoded );
     
    17201597 
    17211598  printf("TOOL CFG General: "); 
    1722 #if LCU_SYNTAX_ALF
    17231599  printf("ALFMNF:%d ", m_iALFMaxNumberFilters);
    17241600  printf("ALFInSlice:%d ", m_bALFParamInSlice);
    17251601  printf("ALFPicEnc:%d ", m_bALFPicBasedEncode);
    1726 #endif
    17271602  printf("IBD:%d ", !!g_uiBitIncrement);
    17281603  printf("HAD:%d ", m_bUseHADME           );
     
    17301605  printf("SQP:%d ", m_uiDeltaQpRD         );
    17311606  printf("ASR:%d ", m_bUseASR             );
    1732 #if !PIC_CROPPING
    1733   printf("PAD:%d ", m_bUsePAD             );
    1734 #endif
    17351607  printf("LComb:%d ", m_bUseLComb         );
    17361608  printf("LCMod:%d ", m_bLCMod         );
    17371609  printf("FEN:%d ", m_bUseFastEnc         );
    17381610  printf("ECU:%d ", m_bUseEarlyCU         );
    1739 #if FAST_DECISION_FOR_MRG_RD_COST
    17401611  printf("FDM:%d ", m_useFastDecisionForMerge );
    1741 #endif
    17421612  printf("CFM:%d ", m_bUseCbfFastMode         );
    17431613  printf("RQT:%d ", 1     );
     
    17541624  }
    17551625  printf("CIP:%d ", m_bUseConstrainedIntraPred);
    1756 #if BURST_IPCM
    17571626  printf("PCM:%d ", (m_usePCM && (1<<m_uiPCMLog2MinSize) <= m_uiMaxCUWidth)? 1 : 0);
    1758 #else
    1759   printf("PCM:%d ", ((1<<m_uiPCMLog2MinSize) <= m_uiMaxCUWidth)? 1 : 0);
    1760 #endif
    1761 #if SAO_UNIT_INTERLEAVING
    17621627  printf("SAOInterleaving:%d ", (m_saoInterleavingFlag)?(1):(0));
    1763 #endif
    17641628#if LOSSLESS_CODING
    17651629  printf("LosslessCuEnabled:%d ", (m_useLossless)? 1:0 );
     
    17671631  printf("WPP:%d ", (Int)m_bUseWeightPred);
    17681632  printf("WPB:%d ", m_uiBiPredIdc);
    1769 #if !REMOVE_TILE_DEPENDENCE
    1770   printf("TileBoundaryIndependence:%d ", m_iTileBoundaryIndependenceIdr );
    1771 #endif
    17721633  printf("TileLocationInSliceHdr:%d ", m_iTileLocationInSliceHeaderFlag);
    17731634  printf("TileMarker:%d", m_iTileMarkerFlag);
     
    17921653#endif
    17931654
    1794 #if MULTIBITS_DATA_HIDING
    17951655  printf(" SignBitHidingFlag:%d SignBitHidingThreshold:%d", m_signHideFlag, m_signHidingThreshold);
    1796 #endif
    17971656  printf("\n");
    17981657  printf("TOOL CFG VIDEO  : ");
     
    18041663#endif
    18051664#if LGE_ILLUCOMP_B0045
     1665#if LGE_ILLUCOMP_DEPTH_C0046
     1666  printf("IlluCompEnable: %d %d", m_abUseIC[0] ? 1 : 0, m_abUseIC[1] ? 1 : 0);
     1667#else
    18061668  printf("IlluCompEnable: %d ", m_bUseIC);
    18071669#endif
    1808 
     1670#endif
     1671#if INTER_VIEW_VECTOR_SCALING_C0115
     1672  printf("IVSEnable: %d ", m_bUseIVS);
     1673#endif
    18091674  printf("\n");
    18101675
Note: See TracChangeset for help on using the changeset viewer.