Skip to content
Snippets Groups Projects
EncAppCfg.h 57.3 KiB
Newer Older
  • Learn to ignore specific revisions
  •   int         m_numRefLayers[MAX_VPS_LAYERS];
      std::string m_refLayerIdxStr[MAX_VPS_LAYERS];
      bool        m_eachLayerIsAnOlsFlag;
      int         m_olsModeIdc;
      int         m_numOutputLayerSets;
      std::string m_olsOutputLayerStr[MAX_VPS_LAYERS];
    
      std::string m_maxTidILRefPicsPlus1Str[MAX_VPS_LAYERS];
    
    Vadim Seregin's avatar
    Vadim Seregin committed
    
    
      int         m_numPtlsInVps;
    
      int         m_ptPresentInPtl[MAX_NUM_OLSS];
    
      EncCfgParam::CfgVPSParameters m_cfgVPSParameters;
    
      Level::Name m_levelPtl[MAX_NUM_OLSS];
    
      int         m_olsPtlIdx[MAX_NUM_OLSS];
    
    #if EXTENSION_360_VIDEO
      TExt360AppEncCfg m_ext360;
      friend class TExt360AppEncCfg;
      friend class TExt360AppEncTop;
    #endif
    
    
    #if JVET_O0756_CONFIG_HDRMETRICS || JVET_O0756_CALCULATE_HDRMETRICS
    
    #if JVET_O0756_CALCULATE_HDRMETRICS
      double      m_whitePointDeltaE[hdrtoolslib::NB_REF_WHITE];
    
    #else
      double      m_whitePointDeltaE[3];
    #endif
    
      double      m_maxSampleValue;
      int         m_sampleRange;
      int         m_colorPrimaries;
      bool        m_enableTFunctionLUT;
      int         m_chromaLocation;
      int         m_chromaUPFilter;
      int         m_cropOffsetLeft;
      int         m_cropOffsetTop;
      int         m_cropOffsetRight;
      int         m_cropOffsetBottom;
      bool        m_calculateHdrMetrics;
    #endif
    
    
      // internal member functions
      bool  xCheckParameter ();                                   ///< check validity of configuration values
      void  xPrintParameter ();                                   ///< print configuration values
      void  xPrintUsage     ();                                   ///< print usage
    
      bool  xHasNonZeroTemporalID();                             ///< check presence of constant temporal ID in GOP structure
      bool  xHasLeadingPicture();                                 ///< check presence of leading pictures in GOP structure
    
      int   xAutoDetermineProfile();                              ///< auto determine the profile to use given the other configuration settings. Returns 1 if erred. Can select profile 'NONE'
    
    public:
      EncAppCfg();
      virtual ~EncAppCfg();
    
    public:
      void  create    ();                                         ///< create option handling class
      void  destroy   ();                                         ///< destroy option handling class
      bool  parseCfg  ( int argc, char* argv[] );                ///< parse configuration file to fill member variables
    
    };// END CLASS DEFINITION EncAppCfg
    
    //! \}
    
    #endif // __ENCAPPCFG__