Changeset 296 in 3DVCSoftware for trunk/source/App/TAppEncoder/TAppEncCfg.cpp
- Timestamp:
- 20 Feb 2013, 22:07:43 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/App/TAppEncoder/TAppEncCfg.cpp
r210 r296 220 220 221 221 /* 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") 244 242 ("InputBitDepth", m_uiInputBitDepth, 8u, "bit-depth of input file") 245 243 ("BitDepth", m_uiInputBitDepth, 8u, "deprecated alias of InputBitDepth") 246 244 ("OutputBitDepth", m_uiOutputBitDepth, 0u, "bit-depth of output file") 247 245 ("InternalBitDepth", m_uiInternalBitDepth, 0u, "Internal bit-depth (BitDepth+BitIncrement)") 248 #if !PIC_CROPPING249 ("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 #endif253 246 ("FrameRate,-fr", m_iFrameRate, 0, "Frame rate") 254 247 ("FrameSkip,-fs", m_FrameSkip, 0u, "Number of frames to skip at start of input YUV") 255 248 ("FramesToBeEncoded,f", m_iFrameToBeEncoded, 0, "number of frames to be encoded (default=all)") 256 ("FrameToBeEncoded", 249 ("FrameToBeEncoded", m_iFrameToBeEncoded, 0, "deprecated alias of FramesToBeEncoded") 257 250 258 251 ("NumberOfViews", m_iNumberOfViews, 0, "Number of views") … … 279 272 ("DecodingRefreshType,-dr",m_iDecodingRefreshType, 0, "intra refresh, (0:none 1:CRA 2:IDR)") 280 273 ("GOPSize,g", m_iGOPSize, 1, "GOP size of temporal structure") 281 #if !H0567_DPB_PARAMETERS_PER_TEMPORAL_LAYER282 ("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 #endif285 274 ("ListCombination,-lc", m_bUseLComb, true, "combined reference list flag for uni-prediction in B-slices") 286 275 ("LCModification", m_bLCMod, false, "enables signalling of combined reference list derivation") … … 321 310 ("TemporalLayerQPOffset_L3,-tq3", m_aiTLayerQPOffset[3], MAX_QP + 1, "QP offset of temporal layer 3") 322 311 323 #if !H0566_TLA324 ("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 #endif331 312 332 313 /* Entropy coding parameters */ … … 340 321 ("LoopFilterTcOffset_div2", m_loopFilterTcOffsetDiv2, 0 ) 341 322 #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 342 326 ("IlluCompEnable", m_bUseIC , true , "Use illumination compensation for inter-view prediction" ) 343 327 #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 345 332 ("DeblockingFilterControlPresent", m_DeblockingFilterControlPresent, true) 346 #endif347 333 348 334 /* Camera Paremetes */ … … 391 377 ("PredDepthMapGen", m_uiPredDepthMapGeneration, (UInt)0, "generation of prediction depth maps for motion data prediction" ) 392 378 #endif 393 #if H HI_INTER_VIEW_MOTION_PRED379 #if H3D_IVMP 394 380 ("MultiviewMvPred", m_uiMultiviewMvPredMode, (UInt)0, "usage of predicted depth maps" ) 395 381 ("MultiviewMvRegMode", m_uiMultiviewMvRegMode, (UInt)0, "regularization mode for multiview motion vectors" ) 396 382 ("MultiviewMvRegLambdaScale", m_dMultiviewMvRegLambdaScale, (Double)0, "lambda scale for multiview motion vector regularization" ) 397 383 #endif 398 #if H HI_INTER_VIEW_RESIDUAL_PRED384 #if H3D_IVRP 399 385 ("MultiviewResPred", m_uiMultiviewResPredMode, (UInt)0, "usage of inter-view residual prediction" ) 400 386 #endif … … 405 391 ("ALF", m_abUseALF, std::vector<Bool>(1,true), "Enables ALF") 406 392 ("SAO", m_abUseSAO, std::vector<Bool>(1, true), "SAO") 407 #if SAO_UNIT_INTERLEAVING408 393 ("MaxNumOffsetsPerPic", m_maxNumOffsetsPerPic, 2048, "2048: default") 409 394 ("SAOInterleaving", m_saoInterleavingFlag, false, "0: SAO Picture Mode, 1: SAO Interleaving ") 410 #endif411 395 412 396 ("ALFEncodePassReduction", m_iALFEncodePassReduction, 0, "0:Original 16-pass, 1: 1-pass, 2: 2-pass encoding") 413 397 414 398 ("ALFMaxNumFilter,-ALFMNF", m_iALFMaxNumberFilters, 16, "16: No Constrained, 1-15: Constrained max number of filter") 415 #if LCU_SYNTAX_ALF416 399 ("ALFParamInSlice", m_bALFParamInSlice, false, "ALF parameters in 0: APS, 1: slice header") 417 400 ("ALFPicBasedEncode", m_bALFPicBasedEncode, true, "ALF picture-based encoding 0: false, 1: true") 418 #endif419 401 420 402 ("SliceMode", m_iSliceMode, 0, "0: Disable all Recon slice limits, 1: Enforce max # of LCUs, 2: Enforce max # of bytes") … … 439 421 ("TileInfoPresentFlag", m_iColumnRowInfoPresent, 1, "0: tiles parameters are NOT present in the PPS. 1: tiles parameters are present in the PPS") 440 422 ("UniformSpacingIdc", m_iUniformSpacingIdr, 0, "Indicates if the column and row boundaries are distributed uniformly") 441 #if !REMOVE_TILE_DEPENDENCE442 ("TileBoundaryIndependenceIdc", m_iTileBoundaryIndependenceIdr, 1, "Indicates if the column and row boundaries break the prediction")443 #endif444 423 ("NumTileColumnsMinus1", m_iNumColumnsMinus1, 0, "Number of columns in a picture minus 1") 445 424 ("ColumnWidthArray", cfg_ColumnWidth, string(""), "Array containing ColumnWidth values in units of LCU") … … 456 435 ("ScalingList", m_useScalingListId, 0, "0: no scaling list, 1: default scaling lists, 2: scaling lists specified in ScalingListFile") 457 436 ("ScalingListFile", cfg_ScalingListFile, string(""), "Scaling list file name") 458 #if MULTIBITS_DATA_HIDING459 437 ("SignHideFlag,-SBH", m_signHideFlag, 1) 460 438 ("SignHideThreshold,-TSIG", m_signHidingThreshold, 4) 461 #endif462 439 #if HHI_DMM_WEDGE_INTRA || HHI_DMM_PRED_TEX 463 440 ("DMM", m_bUseDMM, false, "depth model modes flag") … … 477 454 ("FEN", m_bUseFastEnc, false, "fast encoder setting") 478 455 ("ECU", m_bUseEarlyCU, false, "Early CU setting") 479 #if FAST_DECISION_FOR_MRG_RD_COST480 456 ("FDM", m_useFastDecisionForMerge, true, "Fast decision for Merge RD Cost") 481 #endif482 457 ("CFM", m_bUseCbfFastMode, false, "Cbf fast mode setting") 483 458 #if HHI_INTERVIEW_SKIP … … 617 592 } 618 593 619 #if PIC_CROPPING620 594 switch (m_croppingMode) 621 595 { … … 667 641 } 668 642 } 669 #else670 671 // compute source padding size672 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 #endif687 643 688 644 // allocate slice-based dQP values … … 890 846 xConfirmPara( (m_iIntraPeriod > 0 && m_iIntraPeriod < m_iGOPSize) || m_iIntraPeriod == 0, "Intra period must be more than GOP size, or -1 , not 0" ); 891 847 xConfirmPara( m_iDecodingRefreshType < 0 || m_iDecodingRefreshType > 2, "Decoding Refresh Type must be equal to 0, 1 or 2" ); 892 #if H0736_AVC_STYLE_QP_RANGE893 848 xConfirmPara( m_aiQP[0] < -6 * ((Int)m_uiInternalBitDepth - 8) || m_aiQP[0] > 51, "QP exceeds supported range (-QpBDOffsety to 51)" ); 894 849 if ( m_aiQP.size() >= 2 ) … … 896 851 xConfirmPara( m_aiQP[1] < -6 * ((Int)m_uiInternalBitDepth - 8) || m_aiQP[1] > 51, "QP depth exceeds supported range (-QpBDOffsety to 51)" ); 897 852 } 898 #else899 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 #endif905 853 xConfirmPara( m_iALFEncodePassReduction < 0 || m_iALFEncodePassReduction > 2, "ALFEncodePassReduction must be equal to 0, 1 or 2"); 906 #if LCU_SYNTAX_ALF907 854 xConfirmPara( m_iALFMaxNumberFilters < 1, "ALFMaxNumFilter should be larger than 1"); 908 #else909 xConfirmPara( m_iALFMaxNumberFilters < 1 || m_iALFMaxNumberFilters > 16, "ALFMaxNumFilter exceeds supported range (1 to 16)");910 #endif911 855 xConfirmPara( m_loopFilterBetaOffsetDiv2 < -13 || m_loopFilterBetaOffsetDiv2 > 13, "Loop Filter Beta Offset div. 2 exceeds supported range (-13 to 13)"); 912 856 xConfirmPara( m_loopFilterTcOffsetDiv2 < -13 || m_loopFilterTcOffsetDiv2 > 13, "Loop Filter Tc Offset div. 2 exceeds supported range (-13 to 13)"); … … 934 878 xConfirmPara( m_uiMaxCUWidth < 16, "Maximum partition width size should be larger than or equal to 16"); 935 879 xConfirmPara( m_uiMaxCUHeight < 16, "Maximum partition height size should be larger than or equal to 16"); 936 #if PIC_CROPPING937 880 xConfirmPara( (m_iSourceWidth % (m_uiMaxCUWidth >> (m_uiMaxCUDepth-1)))!=0, "Resulting coded frame width must be a multiple of the minimum CU size"); 938 881 xConfirmPara( (m_iSourceHeight % (m_uiMaxCUHeight >> (m_uiMaxCUDepth-1)))!=0, "Resulting coded frame height must be a multiple of the minimum CU size"); 939 #else940 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 #endif943 882 944 883 xConfirmPara( m_uiQuadtreeTULog2MinSize < 2, "QuadtreeTULog2MinSize must be 2 or greater."); … … 967 906 xConfirmPara ( m_uiPredDepthMapGeneration >= 2 && !m_bUsingDepthMaps, "PredDepthMapGen >= 2 requires CodeDepthMaps = 1" ); 968 907 #endif 969 #if H HI_INTER_VIEW_MOTION_PRED908 #if H3D_IVMP 970 909 xConfirmPara ( m_uiMultiviewMvPredMode > 7, "MultiviewMvPred must be less than or equal to 7" ); 971 910 xConfirmPara ( m_uiMultiviewMvPredMode > 0 && m_uiPredDepthMapGeneration == 0 , "MultiviewMvPred > 0 requires PredDepthMapGen > 0" ); … … 977 916 } 978 917 #endif 979 #if H HI_INTER_VIEW_RESIDUAL_PRED918 #if H3D_IVRP 980 919 xConfirmPara ( m_uiMultiviewResPredMode > 1, "MultiviewResPred must be less than or equal to 1" ); 981 920 xConfirmPara ( m_uiMultiviewResPredMode > 0 && m_uiPredDepthMapGeneration == 0 , "MultiviewResPred > 0 requires PredDepthMapGen > 0" ); … … 998 937 } 999 938 #if ADAPTIVE_QP_SELECTION 1000 #if H0736_AVC_STYLE_QP_RANGE1001 939 xConfirmPara( m_bUseAdaptQpSelect == true && m_aiQP[0] < 0, "AdaptiveQpSelection must be disabled when QP < 0."); 1002 940 xConfirmPara( m_bUseAdaptQpSelect == true && m_aiQP[1] < 0, "AdaptiveQpSelection must be disabled when QP < 0."); 1003 941 xConfirmPara( m_bUseAdaptQpSelect == true && (m_iChromaQpOffset !=0 || m_iChromaQpOffset2nd != 0 ), "AdaptiveQpSelection must be disabled when ChromaQpOffset is not equal to 0."); 1004 #endif1005 942 #endif 1006 943 … … 1013 950 } 1014 951 1015 #if FIXED_NUMBER_OF_TILES_SLICE_MODE1016 952 xConfirmPara( m_iSliceMode < 0 || m_iSliceMode > 3, "SliceMode exceeds supported range (0 to 3)" ); 1017 #endif1018 953 if (m_iSliceMode!=0) 1019 954 { 1020 955 xConfirmPara( m_iSliceArgument < 1 , "SliceArgument should be larger than or equal to 1" ); 1021 956 } 1022 #if FIXED_NUMBER_OF_TILES_SLICE_MODE1023 957 if (m_iSliceMode==3) 1024 958 { 1025 959 xConfirmPara( m_iSliceGranularity > 0 , "When SliceMode == 3 is chosen, the SliceGranularity must be 0" ); 1026 960 } 1027 #endif1028 961 xConfirmPara( m_iEntropySliceMode < 0 || m_iEntropySliceMode > 2, "EntropySliceMode exceeds supported range (0 to 2)" ); 1029 962 if (m_iEntropySliceMode!=0) … … 1035 968 xConfirmPara( m_iSliceGranularity > m_iMaxCuDQPDepth, "SliceGranularity must be smaller smaller than or equal to maximum dqp depth" ); 1036 969 1037 #if NO_COMBINED_PARALLEL1038 970 bool tileFlag = (m_iNumColumnsMinus1 > 0 || m_iNumRowsMinus1 > 0 ); 1039 971 xConfirmPara( tileFlag && m_iEntropySliceMode, "Tile and Entropy Slice can not be applied together"); 1040 972 xConfirmPara( tileFlag && m_iWaveFrontSynchro, "Tile and Wavefront can not be applied together"); 1041 973 xConfirmPara( m_iWaveFrontSynchro && m_iEntropySliceMode, "Wavefront and Entropy Slice can not be applied together"); 1042 #endif1043 974 1044 975 // max CU width and height should be power of 2 … … 1232 1163 for( Int i = 0; i < MAX_GOP; i++ ) { isOK[i] = false; } 1233 1164 Int numOK = 0; 1234 #if !H0567_DPB_PARAMETERS_PER_TEMPORAL_LAYER1235 Int numReorderFramesRequired=0;1236 m_maxNumberOfReferencePictures=0;1237 Int lastDisp = -1;1238 #endif1239 1165 m_extraRPSs[viewId] = 0; 1240 1166 //start looping through frames in coding order until we can verify that the GOP structure is correct. … … 1420 1346 } 1421 1347 } 1422 #if !H0567_DPB_PARAMETERS_PER_TEMPORAL_LAYER1423 if(m_maxNumberOfReferencePictures<numRefs)1424 {1425 m_maxNumberOfReferencePictures=numRefs;1426 }1427 #endif1428 1348 refList[numRefs] = curPOC; 1429 1349 numRefs++; 1430 #if !H0567_DPB_PARAMETERS_PER_TEMPORAL_LAYER1431 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 #endif1452 1350 } 1453 1351 checkGOP++; 1454 1352 } 1455 #if !H0567_DPB_PARAMETERS_PER_TEMPORAL_LAYER1456 if (m_numReorderFrames == -1)1457 {1458 m_numReorderFrames = numReorderFramesRequired;1459 }1460 #endif1461 1353 xConfirmPara( errorGOP, "Invalid GOP structure given" ); 1462 #if H0566_TLA1463 1354 m_maxTempLayer[viewId] = 1; 1464 #endif1465 1355 for( Int i = 0; i < m_iGOPSize; i++ ) 1466 1356 { 1467 #if H0566_TLA1468 1357 if( m_GOPListsMvc[viewId][i].m_temporalId >= m_maxTempLayer[viewId] ) 1469 1358 { 1470 1359 m_maxTempLayer[viewId] = m_GOPListsMvc[viewId][i].m_temporalId + 1; 1471 1360 } 1472 #endif1473 1361 xConfirmPara( m_GOPListsMvc[viewId][i].m_sliceType != 'B' && m_GOPListsMvc[viewId][i].m_sliceType != 'P', "Slice type must be equal to B or P" ); 1474 1362 } 1475 1363 1476 #if H0567_DPB_PARAMETERS_PER_TEMPORAL_LAYER1477 1364 for( Int i = 0; i < MAX_TLAYER; i++ ) 1478 1365 { … … 1531 1418 m_maxDecPicBuffering[viewId][MAX_TLAYER-1] = m_numReorderPics[viewId][MAX_TLAYER-1]; 1532 1419 } 1533 #endif 1534 1535 #if H0567_DPB_PARAMETERS_PER_TEMPORAL_LAYER 1420 1536 1421 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 #else1538 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 #endif1541 1422 } 1542 1423 } … … 1648 1529 } 1649 1530 } 1650 #if PIC_CROPPING1651 1531 printf("Real Format : %dx%d %dHz\n", m_iSourceWidth - m_cropLeft - m_cropRight, m_iSourceHeight - m_cropTop - m_cropBottom, m_iFrameRate ); 1652 #else1653 printf("Real Format : %dx%d %dHz\n", m_iSourceWidth - m_aiPad[0], m_iSourceHeight-m_aiPad[1], m_iFrameRate );1654 #endif1655 1532 printf("Internal Format : %dx%d %dHz\n", m_iSourceWidth, m_iSourceHeight, m_iFrameRate ); 1656 1533 printf("Frame index : %u - %d (%d frames)\n", m_FrameSkip, m_FrameSkip+m_iFrameToBeEncoded-1, m_iFrameToBeEncoded ); … … 1720 1597 1721 1598 printf("TOOL CFG General: "); 1722 #if LCU_SYNTAX_ALF1723 1599 printf("ALFMNF:%d ", m_iALFMaxNumberFilters); 1724 1600 printf("ALFInSlice:%d ", m_bALFParamInSlice); 1725 1601 printf("ALFPicEnc:%d ", m_bALFPicBasedEncode); 1726 #endif1727 1602 printf("IBD:%d ", !!g_uiBitIncrement); 1728 1603 printf("HAD:%d ", m_bUseHADME ); … … 1730 1605 printf("SQP:%d ", m_uiDeltaQpRD ); 1731 1606 printf("ASR:%d ", m_bUseASR ); 1732 #if !PIC_CROPPING1733 printf("PAD:%d ", m_bUsePAD );1734 #endif1735 1607 printf("LComb:%d ", m_bUseLComb ); 1736 1608 printf("LCMod:%d ", m_bLCMod ); 1737 1609 printf("FEN:%d ", m_bUseFastEnc ); 1738 1610 printf("ECU:%d ", m_bUseEarlyCU ); 1739 #if FAST_DECISION_FOR_MRG_RD_COST1740 1611 printf("FDM:%d ", m_useFastDecisionForMerge ); 1741 #endif1742 1612 printf("CFM:%d ", m_bUseCbfFastMode ); 1743 1613 printf("RQT:%d ", 1 ); … … 1754 1624 } 1755 1625 printf("CIP:%d ", m_bUseConstrainedIntraPred); 1756 #if BURST_IPCM1757 1626 printf("PCM:%d ", (m_usePCM && (1<<m_uiPCMLog2MinSize) <= m_uiMaxCUWidth)? 1 : 0); 1758 #else1759 printf("PCM:%d ", ((1<<m_uiPCMLog2MinSize) <= m_uiMaxCUWidth)? 1 : 0);1760 #endif1761 #if SAO_UNIT_INTERLEAVING1762 1627 printf("SAOInterleaving:%d ", (m_saoInterleavingFlag)?(1):(0)); 1763 #endif1764 1628 #if LOSSLESS_CODING 1765 1629 printf("LosslessCuEnabled:%d ", (m_useLossless)? 1:0 ); … … 1767 1631 printf("WPP:%d ", (Int)m_bUseWeightPred); 1768 1632 printf("WPB:%d ", m_uiBiPredIdc); 1769 #if !REMOVE_TILE_DEPENDENCE1770 printf("TileBoundaryIndependence:%d ", m_iTileBoundaryIndependenceIdr );1771 #endif1772 1633 printf("TileLocationInSliceHdr:%d ", m_iTileLocationInSliceHeaderFlag); 1773 1634 printf("TileMarker:%d", m_iTileMarkerFlag); … … 1792 1653 #endif 1793 1654 1794 #if MULTIBITS_DATA_HIDING1795 1655 printf(" SignBitHidingFlag:%d SignBitHidingThreshold:%d", m_signHideFlag, m_signHidingThreshold); 1796 #endif1797 1656 printf("\n"); 1798 1657 printf("TOOL CFG VIDEO : "); … … 1804 1663 #endif 1805 1664 #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 1806 1668 printf("IlluCompEnable: %d ", m_bUseIC); 1807 1669 #endif 1808 1670 #endif 1671 #if INTER_VIEW_VECTOR_SCALING_C0115 1672 printf("IVSEnable: %d ", m_bUseIVS); 1673 #endif 1809 1674 printf("\n"); 1810 1675
Note: See TracChangeset for help on using the changeset viewer.