Newer
Older

Karsten Suehring
committed
msg( DETAILS, "Cb QP Offset (dual tree) : %d (%d)\n", m_cbQpOffset, m_cbQpOffsetDualTree);
msg( DETAILS, "Cr QP Offset (dual tree) : %d (%d)\n", m_crQpOffset, m_crQpOffsetDualTree);
msg( DETAILS, "QP adaptation : %d (range=%d)\n", m_bUseAdaptiveQP, (m_bUseAdaptiveQP ? m_iQPAdaptationRange : 0) );
msg( DETAILS, "GOP size : %d\n", m_iGOPSize );
msg( DETAILS, "Input bit depth : (Y:%d, C:%d)\n", m_inputBitDepth[CHANNEL_TYPE_LUMA], m_inputBitDepth[CHANNEL_TYPE_CHROMA] );
msg( DETAILS, "MSB-extended bit depth : (Y:%d, C:%d)\n", m_MSBExtendedBitDepth[CHANNEL_TYPE_LUMA], m_MSBExtendedBitDepth[CHANNEL_TYPE_CHROMA] );
msg( DETAILS, "Internal bit depth : (Y:%d, C:%d)\n", m_internalBitDepth[CHANNEL_TYPE_LUMA], m_internalBitDepth[CHANNEL_TYPE_CHROMA] );
msg( DETAILS, "Intra reference smoothing : %s\n", (m_enableIntraReferenceSmoothing ? "Enabled" : "Disabled") );
Philippe de Lagrange
committed
if (m_cuChromaQpOffsetList.size() > 0)
{
msg( DETAILS, "Chroma QP offset list : (" );
for (int i=0; i < m_cuChromaQpOffsetList.size(); i++)
{
msg( DETAILS, "%d %d %d%s", m_cuChromaQpOffsetList[i].u.comp.CbOffset, m_cuChromaQpOffsetList[i].u.comp.CrOffset, m_cuChromaQpOffsetList[i].u.comp.JointCbCrOffset,
(i+1 < m_cuChromaQpOffsetList.size() ? ", " : ")\n") );
}
msg( DETAILS, "cu_chroma_qp_offset_subdiv : %d\n", m_cuChromaQpOffsetSubdiv);
Philippe de Lagrange
committed
msg( DETAILS, "cu_chroma_qp_offset_enabled_flag : %s\n", (m_cuChromaQpOffsetEnabled ? "Enabled" : "Disabled") );
Philippe de Lagrange
committed
}
else
{
msg( DETAILS, "Chroma QP offset list : Disabled\n" );
}

Karsten Suehring
committed
msg( DETAILS, "extended_precision_processing_flag : %s\n", (m_extendedPrecisionProcessingFlag ? "Enabled" : "Disabled") );
msg( DETAILS, "transform_skip_rotation_enabled_flag : %s\n", (m_transformSkipRotationEnabledFlag ? "Enabled" : "Disabled") );
msg( DETAILS, "transform_skip_context_enabled_flag : %s\n", (m_transformSkipContextEnabledFlag ? "Enabled" : "Disabled") );
msg( DETAILS, "high_precision_offsets_enabled_flag : %s\n", (m_highPrecisionOffsetsEnabledFlag ? "Enabled" : "Disabled") );
msg( DETAILS, "persistent_rice_adaptation_enabled_flag: %s\n", (m_persistentRiceAdaptationEnabledFlag ? "Enabled" : "Disabled") );
msg( DETAILS, "cabac_bypass_alignment_enabled_flag : %s\n", (m_cabacBypassAlignmentEnabledFlag ? "Enabled" : "Disabled") );
switch (m_costMode)
{
case COST_STANDARD_LOSSY: msg( DETAILS, "Cost function: : Lossy coding (default)\n"); break;
case COST_SEQUENCE_LEVEL_LOSSLESS: msg( DETAILS, "Cost function: : Sequence_level_lossless coding\n"); break;
case COST_LOSSLESS_CODING: msg( DETAILS, "Cost function: : Lossless coding with fixed QP of %d\n", LOSSLESS_AND_MIXED_LOSSLESS_RD_COST_TEST_QP); break;
case COST_MIXED_LOSSLESS_LOSSY_CODING: msg( DETAILS, "Cost function: : Mixed_lossless_lossy coding with QP'=%d for lossless evaluation\n", LOSSLESS_AND_MIXED_LOSSLESS_RD_COST_TEST_QP_PRIME); break;
default: msg( DETAILS, "Cost function: : Unknown\n"); break;
}
msg( DETAILS, "RateControl : %d\n", m_RCEnableRateControl );
msg( DETAILS, "WeightedPredMethod : %d\n", int(m_weightedPredictionMethod));

Karsten Suehring
committed
if(m_RCEnableRateControl)
{
msg( DETAILS, "TargetBitrate : %d\n", m_RCTargetBitrate );
msg( DETAILS, "KeepHierarchicalBit : %d\n", m_RCKeepHierarchicalBit );
msg( DETAILS, "LCULevelRC : %d\n", m_RCLCULevelRC );
msg( DETAILS, "UseLCUSeparateModel : %d\n", m_RCUseLCUSeparateModel );
msg( DETAILS, "InitialQP : %d\n", m_RCInitialQP );
msg( DETAILS, "ForceIntraQP : %d\n", m_RCForceIntraQP );
#if U0132_TARGET_BITS_SATURATION
msg( DETAILS, "CpbSaturation : %d\n", m_RCCpbSaturationEnabled );
if (m_RCCpbSaturationEnabled)
{
msg( DETAILS, "CpbSize : %d\n", m_RCCpbSize);
msg( DETAILS, "InitalCpbFullness : %.2f\n", m_RCInitialCpbFullness);
}
#endif
}
msg( DETAILS, "Max Num Merge Candidates : %d\n", m_maxNumMergeCand );
msg( DETAILS, "Max Num Affine Merge Candidates : %d\n", m_maxNumAffineMergeCand );
msg( DETAILS, "Max Num Geo Merge Candidates : %d\n", m_maxNumGeoCand );
msg( DETAILS, "Max Num IBC Merge Candidates : %d\n", m_maxNumIBCMergeCand );

Karsten Suehring
committed
4065
4066
4067
4068
4069
4070
4071
4072
4073
4074
4075
4076
4077
4078
4079
4080
4081
4082
4083
4084
4085
4086
msg( DETAILS, "\n");
msg( VERBOSE, "TOOL CFG: ");
msg( VERBOSE, "IBD:%d ", ((m_internalBitDepth[CHANNEL_TYPE_LUMA] > m_MSBExtendedBitDepth[CHANNEL_TYPE_LUMA]) || (m_internalBitDepth[CHANNEL_TYPE_CHROMA] > m_MSBExtendedBitDepth[CHANNEL_TYPE_CHROMA])));
msg( VERBOSE, "HAD:%d ", m_bUseHADME );
msg( VERBOSE, "RDQ:%d ", m_useRDOQ );
msg( VERBOSE, "RDQTS:%d ", m_useRDOQTS );
msg( VERBOSE, "RDpenalty:%d ", m_rdPenalty );
#if SHARP_LUMA_DELTA_QP
msg( VERBOSE, "LQP:%d ", m_lumaLevelToDeltaQPMapping.mode );
#endif
msg( VERBOSE, "SQP:%d ", m_uiDeltaQpRD );
msg( VERBOSE, "ASR:%d ", m_bUseASR );
msg( VERBOSE, "MinSearchWindow:%d ", m_minSearchWindow );
msg( VERBOSE, "RestrictMESampling:%d ", m_bRestrictMESampling );
msg( VERBOSE, "FEN:%d ", int(m_fastInterSearchMode) );
msg( VERBOSE, "ECU:%d ", m_bUseEarlyCU );
msg( VERBOSE, "FDM:%d ", m_useFastDecisionForMerge );
msg( VERBOSE, "ESD:%d ", m_useEarlySkipDetection );
msg( VERBOSE, "TransformSkip:%d ", m_useTransformSkip );
msg( VERBOSE, "TransformSkipFast:%d ", m_useTransformSkipFast );
msg( VERBOSE, "TransformSkipLog2MaxSize:%d ", m_log2MaxTransformSkipBlockSize);
msg(VERBOSE, "ChromaTS:%d ", m_useChromaTS);
msg( VERBOSE, "BDPCM:%d ", m_useBDPCM );
msg( VERBOSE, "Tiles: %dx%d ", m_numTileCols, m_numTileRows );
msg( VERBOSE, "Slices: %d ", m_numSlicesInPic);
msg( VERBOSE, "MCTS:%d ", m_MCTSEncConstraint );

Karsten Suehring
committed
msg( VERBOSE, "SAO:%d ", (m_bUseSAO)?(1):(0));
msg( VERBOSE, "ALF:%d ", m_alf ? 1 : 0 );
msg( VERBOSE, "CCALF:%d ", m_ccalf ? 1 : 0 );

Karsten Suehring
committed
msg( VERBOSE, "WPP:%d ", (int)m_useWeightedPred);
msg( VERBOSE, "WPB:%d ", (int)m_useWeightedBiPred);
msg( VERBOSE, "PME:%d ", m_log2ParallelMergeLevel);

Karsten Suehring
committed
const int iWaveFrontSubstreams = m_entropyCodingSyncEnabledFlag ? (m_iSourceHeight + m_uiMaxCUHeight - 1) / m_uiMaxCUHeight : 1;
msg( VERBOSE, " WaveFrontSynchro:%d WaveFrontSubstreams:%d", m_entropyCodingSyncEnabledFlag?1:0, iWaveFrontSubstreams);
msg( VERBOSE, " ScalingList:%d ", m_useScalingListId );
Martin Pettersson
committed
msg( VERBOSE, "TMVPMode:%d ", m_TMVPModeId );

Karsten Suehring
committed
msg( VERBOSE, " DQ:%d ", m_depQuantEnabledFlag);
msg( VERBOSE, " SignBitHidingFlag:%d ", m_signDataHidingEnabledFlag);
msg( VERBOSE, "RecalQP:%d ", m_recalculateQPAccordingToLambda ? 1 : 0 );
{
msg( VERBOSE, "\nTOOL CFG: " );
msg( VERBOSE, "LFNST:%d ", m_LFNST );

Karsten Suehring
committed
msg( VERBOSE, "Affine:%d ", m_Affine );
if ( m_Affine )
{
msg( VERBOSE, "AffineType:%d ", m_AffineType );
}
msg(VERBOSE, "PROF:%d ", m_PROF);
msg(VERBOSE, "SbTMVP:%d ", m_sbTmvpEnableFlag);

Karsten Suehring
committed
msg( VERBOSE, "IMV:%d ", m_ImvMode );
msg( VERBOSE, "BIO:%d ", m_BIO );

Karsten Suehring
committed
msg( VERBOSE, "LMChroma:%d ", m_LMChroma );
msg( VERBOSE, "HorCollocatedChroma:%d ", m_horCollocatedChromaFlag );
msg( VERBOSE, "VerCollocatedChroma:%d ", m_verCollocatedChromaFlag );
msg( VERBOSE, "MTS: %1d(intra) %1d(inter) ", m_MTS & 1, ( m_MTS >> 1 ) & 1 );
msg( VERBOSE, "SBT:%d ", m_SBT );
msg( VERBOSE, "ISP:%d ", m_ISP );
msg( VERBOSE, "CompositeLTReference:%d ", m_compositeRefEnabled);
msg( VERBOSE, "Bcw:%d ", m_bcw );
msg( VERBOSE, "BcwFast:%d ", m_BcwFast );
Shunsuke Iwamura
committed
#if LUMA_ADAPTIVE_DEBLOCKING_FILTER_QP_OFFSET
msg( VERBOSE, "LADF:%d ", m_LadfEnabed );
msg(VERBOSE, "CIIP:%d ", m_ciip);
msg( VERBOSE, "Geo:%d ", m_Geo );
m_allowDisFracMMVD = m_MMVD ? m_allowDisFracMMVD : false;
if ( m_MMVD )
msg(VERBOSE, "AllowDisFracMMVD:%d ", m_allowDisFracMMVD);
msg( VERBOSE, "AffineAmvr:%d ", m_AffineAmvr );
Hongbin Liu
committed
m_AffineAmvrEncOpt = m_AffineAmvr ? m_AffineAmvrEncOpt : false;
msg( VERBOSE, "AffineAmvrEncOpt:%d ", m_AffineAmvrEncOpt );
msg(VERBOSE, "DMVR:%d ", m_DMVR);
msg(VERBOSE, "MmvdDisNum:%d ", m_MmvdDisNum);
msg(VERBOSE, "JointCbCr:%d ", m_JointCbCrMode);

Karsten Suehring
committed
}
m_useColorTrans = (m_chromaFormatIDC == CHROMA_444) ? m_useColorTrans : 0u;
msg(VERBOSE, "ACT:%d ", m_useColorTrans);
Yung-Hsuan Chao (Jessie)
committed
msg(VERBOSE, "PLT:%d ", m_PLTMode);
msg( VERBOSE, "HashME:%d ", m_HashME );
msg( VERBOSE, "WrapAround:%d ", m_wrapAround);
if( m_wrapAround )
msg( VERBOSE, "WrapAroundOffset:%d ", m_wrapAroundOffset );

Karsten Suehring
committed
// ADD_NEW_TOOL (add some output indicating the usage of tools)
msg( VERBOSE, "VirtualBoundariesEnabledFlag:%d ", m_virtualBoundariesEnabledFlag );
msg( VERBOSE, "VirtualBoundariesPresentInSPSFlag:%d ", m_virtualBoundariesPresentFlag );
if( m_virtualBoundariesPresentFlag )
{
Sheng-Yen Lin
committed
msg(VERBOSE, "vertical virtual boundaries:[");
for (unsigned i = 0; i < m_numVerVirtualBoundaries; i++)
{
msg(VERBOSE, " %d", m_virtualBoundariesPosX[i]);
}
msg(VERBOSE, " ] horizontal virtual boundaries:[");
for (unsigned i = 0; i < m_numHorVirtualBoundaries; i++)
{
msg(VERBOSE, " %d", m_virtualBoundariesPosY[i]);
}
msg(VERBOSE, " ] ");
}
msg(VERBOSE, "Reshape:%d ", m_lmcsEnabled);
if (m_lmcsEnabled)
msg(VERBOSE, "(Signal:%s ", m_reshapeSignalType == 0 ? "SDR" : (m_reshapeSignalType == 2 ? "HDR-HLG" : "HDR-PQ"));
msg(VERBOSE, "Opt:%d", m_adpOption);
if (m_adpOption > 0) { msg(VERBOSE, " CW:%d", m_initialCW); }
msg(VERBOSE, " CSoffset:%d", m_CSoffset);
msg(VERBOSE, "MRL:%d ", m_MRL);
msg(VERBOSE, "MIP:%d ", m_MIP);

Karsten Suehring
committed
msg( VERBOSE, "\nFAST TOOL CFG: " );
msg( VERBOSE, "LCTUFast:%d ", m_useFastLCTU );

Karsten Suehring
committed
msg( VERBOSE, "FastMrg:%d ", m_useFastMrg );
msg( VERBOSE, "PBIntraFast:%d ", m_usePbIntraFast );
if( m_ImvMode ) msg( VERBOSE, "IMV4PelFast:%d ", m_Imv4PelFast );
if( m_MTS ) msg( VERBOSE, "MTSMaxCand: %1d(intra) %1d(inter) ", m_MTSIntraMaxCand, m_MTSInterMaxCand );
if( m_ISP ) msg( VERBOSE, "ISPFast:%d ", m_useFastISP );
if( m_LFNST ) msg( VERBOSE, "FastLFNST:%d ", m_useFastLFNST );
msg( VERBOSE, "AMaxBT:%d ", m_useAMaxBT );
msg( VERBOSE, "E0023FastEnc:%d ", m_e0023FastEnc );
msg( VERBOSE, "ContentBasedFastQtbt:%d ", m_contentBasedFastQtbt );
msg( VERBOSE, "UseNonLinearAlfLuma:%d ", m_useNonLinearAlfLuma );
msg( VERBOSE, "UseNonLinearAlfChroma:%d ", m_useNonLinearAlfChroma );
msg( VERBOSE, "MaxNumAlfAlternativesChroma:%d ", m_maxNumAlfAlternativesChroma );
Philipp Merkle
committed
if( m_MIP ) msg(VERBOSE, "FastMIP:%d ", m_useFastMIP);
msg( VERBOSE, "FastLocalDualTree:%d ", m_fastLocalDualTreeMode );

Karsten Suehring
committed
if (m_resChangeInClvsEnabled)
msg( VERBOSE, "RPR:(%1.2lfx, %1.2lfx)|%d ", m_scalingRatioHor, m_scalingRatioVer, m_switchPocPeriod );
}
else
{
msg( VERBOSE, "RPR:%d ", 0 );
Rickard Sjöberg
committed
msg(VERBOSE, "TemporalFilter:%d ", m_gopBasedTemporalFilterEnabled);
Rickard Sjöberg
committed
#if EXTENSION_360_VIDEO
m_ext360.outputConfigurationSummary();
#endif

Karsten Suehring
committed
msg( VERBOSE, "\n\n");
msg( NOTICE, "\n");
fflush( stdout );
}
Martin Pettersson
committed
4222
4223
4224
4225
4226
4227
4228
4229
4230
4231
4232
4233
4234
4235
4236
4237
4238
4239
4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
4252
4253
4254
4255
4256
bool EncAppCfg::xHasNonZeroTemporalID ()
{
for (unsigned int i = 0; i < m_iGOPSize; i++)
{
if ( m_GOPList[i].m_temporalId != 0 )
{
return true;
}
}
return false;
}
bool EncAppCfg::xHasLeadingPicture ()
{
for (unsigned int i = 0; i < m_iGOPSize; i++)
{
for ( unsigned int j = 0; j < m_GOPList[i].m_numRefPics0; j++)
{
if ( m_GOPList[i].m_deltaRefPics0[j] < 0 )
{
return true;
}
}
for ( unsigned int j = 0; j < m_GOPList[i].m_numRefPics1; j++)
{
if ( m_GOPList[i].m_deltaRefPics1[j] < 0 )
{
return true;
}
}
}
return false;
}

Karsten Suehring
committed
bool confirmPara(bool bflag, const char* message)
{
if (!bflag)
{
return false;
}
msg( ERROR, "Error: %s\n",message);
return true;
}
Martin Pettersson
committed