Skip to content
Snippets Groups Projects
EncAppCfg.cpp 260 KiB
Newer Older
  • Learn to ignore specific revisions
  • Philippe Hanhart's avatar
    Philippe Hanhart committed
      }
    
      // ADD_NEW_TOOL (add some output indicating the usage of tools)
    
    #if JVET_Q0246_VIRTUAL_BOUNDARY_ENABLE_FLAG 
      msg( VERBOSE, "VirtualBoundariesEnabledFlag:%d ", m_virtualBoundariesEnabledFlag );
      msg( VERBOSE, "VirtualBoundariesPresentInSPSFlag:%d ", m_virtualBoundariesPresentFlag );
      if( m_virtualBoundariesPresentFlag )
      {
    #else
    
      msg(VERBOSE, "LoopFilterAcrossVirtualBoundaries:%d ", m_loopFilterAcrossVirtualBoundariesDisabledFlag);
      if ( m_loopFilterAcrossVirtualBoundariesDisabledFlag )
      {
    
        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);
    
    Taoran Lu's avatar
    Taoran Lu committed
          msg(VERBOSE, ") ");
        }
    
        msg(VERBOSE, "MRL:%d ", m_MRL);
    
        msg(VERBOSE, "MIP:%d ", m_MIP);
    
    Nan Hu's avatar
    Nan Hu committed
        msg(VERBOSE, "EncDbOpt:%d ", m_encDbOpt);
    
      msg( VERBOSE, "LCTUFast:%d ", m_useFastLCTU );
    
      msg( VERBOSE, "FastMrg:%d ", m_useFastMrg );
      msg( VERBOSE, "PBIntraFast:%d ", m_usePbIntraFast );
    
      if( m_ImvMode ) msg( VERBOSE, "IMV4PelFast:%d ", m_Imv4PelFast );
    
    Tung Nguyen's avatar
    Tung Nguyen committed
      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 );
    
    Karsten Suehring's avatar
    Karsten Suehring committed
      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 );
    
      if( m_MIP ) msg(VERBOSE, "FastMIP:%d ", m_useFastMIP);
    
      msg( VERBOSE, "FastLocalDualTree:%d ", m_fastLocalDualTreeMode );
    
    
      msg( VERBOSE, "NumSplitThreads:%d ", m_numSplitThreads );
      if( m_numSplitThreads > 1 )
      {
        msg( VERBOSE, "ForceSingleSplitThread:%d ", m_forceSplitSequential );
      }
      msg( VERBOSE, "NumWppThreads:%d+%d ", m_numWppThreads, m_numWppExtraLines );
      msg( VERBOSE, "EnsureWppBitEqual:%d ", m_ensureWppBitEqual );
    
    
        msg( VERBOSE, "RPR:(%1.2lfx, %1.2lfx)|%d ", m_scalingRatioHor, m_scalingRatioVer, m_switchPocPeriod );
    
      msg(VERBOSE, "TemporalFilter:%d ", m_gopBasedTemporalFilterEnabled);
    
    #if EXTENSION_360_VIDEO
      m_ext360.outputConfigurationSummary();
    #endif
    
    
    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;
    }
    
    
    
    bool confirmPara(bool bflag, const char* message)
    {
      if (!bflag)
      {
        return false;
      }
    
      msg( ERROR, "Error: %s\n",message);
      return true;
    }