Ignore:
Timestamp:
26 May 2016, 15:03:18 (9 years ago)
Author:
tech
Message:

Initial merge of HM-16.9.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-16.1-dev/source/Lib/TLibEncoder/TEncCfg.h

    r1401 r1402  
    6262  Int m_POC;
    6363  Int m_QPOffset;
     64#if W0038_CQP_ADJ
     65  Int m_CbQPoffset;
     66  Int m_CrQPoffset;
     67#endif
    6468  Double m_QPFactor;
    6569  Int m_tcOffsetDiv2;
     
    8993  : m_POC(-1)
    9094  , m_QPOffset(0)
     95#if W0038_CQP_ADJ
     96  , m_CbQPoffset(0)
     97  , m_CrQPoffset(0)
     98#endif
    9199  , m_QPFactor(0)
    92100  , m_tcOffsetDiv2(0)
     
    135143  Int       m_iFrameRate;
    136144  Int       m_FrameSkip;
     145  UInt      m_temporalSubsampleRatio;
    137146  Int       m_iSourceWidth;
    138147  Int       m_iSourceHeight;
     
    163172
    164173  //====== Coding Structure ========
    165   UInt      m_uiIntraPeriod;
     174  UInt      m_uiIntraPeriod;                    // TODO: make this an Int - it can be -1!
    166175  UInt      m_uiDecodingRefreshType;            ///< the type of decoding refresh employed for the random access.
    167176  Int       m_iGOPSize;
     
    202211  Int       m_loopFilterBetaOffsetDiv2;
    203212  Int       m_loopFilterTcOffsetDiv2;
     213#if W0038_DB_OPT
     214  Int       m_deblockingFilterMetric;
     215#else
    204216  Bool      m_DeblockingFilterMetric;
     217#endif
    205218  Bool      m_bUseSAO;
    206219  Bool      m_bTestSAODisableAtPictureLevel;
     
    209222  Int       m_maxNumOffsetsPerPic;
    210223  Bool      m_saoCtuBoundary;
     224#if OPTIONAL_RESET_SAO_ENCODING_AFTER_IRAP
     225  Bool      m_saoResetEncoderStateAfterIRAP;
     226#endif
    211227
    212228  //====== Motion search ========
     
    231247  Int       m_chromaCbQpOffset;                 //  Chroma Cb QP Offset (0:default)
    232248  Int       m_chromaCrQpOffset;                 //  Chroma Cr Qp Offset (0:default)
     249#if W0038_CQP_ADJ
     250  UInt      m_sliceChromaQpOffsetPeriodicity;                 ///< Used in conjunction with Slice Cb/Cr QpOffsetIntraOrPeriodic. Use 0 (default) to disable periodic nature.
     251  Int       m_sliceChromaQpOffsetIntraOrPeriodic[2/*Cb,Cr*/]; ///< Chroma Cb QP Offset at slice level for I slice or for periodic inter slices as defined by SliceChromaQPOffsetPeriodicity. Replaces offset in the GOP table.
     252#endif
     253
    233254  ChromaFormat m_chromaFormatIDC;
    234255
     
    363384  std::string m_colourRemapSEIFileRoot;          ///< SEI Colour Remapping File (initialized from external file)
    364385  TComSEIMasteringDisplay m_masteringDisplay;
     386#if U0033_ALTERNATIVE_TRANSFER_CHARACTERISTICS_SEI
     387  Bool      m_alternativeTransferCharacteristicsSEIEnabled;
     388  UChar     m_preferredTransferCharacteristics;
     389#endif
     390
    365391#if NH_MV
    366392  SEIMessages* m_seiMessages;
     
    534560  Void      setFrameRate                    ( Int   i )      { m_iFrameRate = i; }
    535561  Void      setFrameSkip                    ( UInt i ) { m_FrameSkip = i; }
     562  Void      setTemporalSubsampleRatio       ( UInt  i )      { m_temporalSubsampleRatio = i; }
    536563  Void      setSourceWidth                  ( Int   i )      { m_iSourceWidth = i; }
    537564  Void      setSourceHeight                 ( Int   i )      { m_iSourceHeight = i; }
     
    619646  Void      setLoopFilterBetaOffset         ( Int   i )      { m_loopFilterBetaOffsetDiv2  = i; }
    620647  Void      setLoopFilterTcOffset           ( Int   i )      { m_loopFilterTcOffsetDiv2    = i; }
     648#if W0038_DB_OPT
     649  Void      setDeblockingFilterMetric       ( Int   i )      { m_deblockingFilterMetric = i; }
     650#else
    621651  Void      setDeblockingFilterMetric       ( Bool  b )      { m_DeblockingFilterMetric = b; }
    622 
     652#endif
    623653  //====== Motion search ========
    624654  Void      setDisableIntraPUsInInterSlices ( Bool  b )      { m_bDisableIntraPUsInInterSlices = b; }
     
    645675  Void      setChromaCbQpOffset             ( Int   i )      { m_chromaCbQpOffset = i; }
    646676  Void      setChromaCrQpOffset             ( Int   i )      { m_chromaCrQpOffset = i; }
     677#if W0038_CQP_ADJ
     678  Void      setSliceChromaOffsetQpIntraOrPeriodic( UInt periodicity, Int sliceChromaQpOffsetIntraOrPeriodic[2]) { m_sliceChromaQpOffsetPeriodicity = periodicity; memcpy(m_sliceChromaQpOffsetIntraOrPeriodic, sliceChromaQpOffsetIntraOrPeriodic, sizeof(m_sliceChromaQpOffsetIntraOrPeriodic)); }
     679  Int       getSliceChromaOffsetQpIntraOrPeriodic( Bool bIsCr) const                                            { return m_sliceChromaQpOffsetIntraOrPeriodic[bIsCr?1:0]; }
     680  UInt      getSliceChromaOffsetQpPeriodicity() const                                                           { return m_sliceChromaQpOffsetPeriodicity; }
     681#endif
    647682
    648683  Void      setChromaFormatIdc              ( ChromaFormat cf ) { m_chromaFormatIDC = cf; }
     
    666701  Int       getFrameRate                    ()      { return  m_iFrameRate; }
    667702  UInt      getFrameSkip                    ()      { return  m_FrameSkip; }
     703  UInt      getTemporalSubsampleRatio       ()      { return  m_temporalSubsampleRatio; }
    668704  Int       getSourceWidth                  ()      { return  m_iSourceWidth; }
    669705  Int       getSourceHeight                 ()      { return  m_iSourceHeight; }
     
    702738  Int       getLoopFilterBetaOffset         ()      { return m_loopFilterBetaOffsetDiv2; }
    703739  Int       getLoopFilterTcOffset           ()      { return m_loopFilterTcOffsetDiv2; }
     740#if W0038_DB_OPT
     741  Int       getDeblockingFilterMetric       ()      { return m_deblockingFilterMetric; }
     742#else
    704743  Bool      getDeblockingFilterMetric       ()      { return m_DeblockingFilterMetric; }
     744#endif
    705745
    706746  //==== Motion search ========
     
    831871  Void  setSaoCtuBoundary              (Bool val)                    { m_saoCtuBoundary = val; }
    832872  Bool  getSaoCtuBoundary              ()                            { return m_saoCtuBoundary; }
     873#if OPTIONAL_RESET_SAO_ENCODING_AFTER_IRAP
     874  Void  setSaoResetEncoderStateAfterIRAP(Bool b)                     { m_saoResetEncoderStateAfterIRAP = b; }
     875  Bool  getSaoResetEncoderStateAfterIRAP() const                     { return m_saoResetEncoderStateAfterIRAP; }
     876#endif
    833877  Void  setLFCrossTileBoundaryFlag               ( Bool   val  )     { m_loopFilterAcrossTilesEnabledFlag = val; }
    834878  Bool  getLFCrossTileBoundaryFlag               ()                  { return m_loopFilterAcrossTilesEnabledFlag;   }
     
    9751019
    9761020  Void  setMasteringDisplaySEI(const TComSEIMasteringDisplay &src)   { m_masteringDisplay = src; }
     1021#if U0033_ALTERNATIVE_TRANSFER_CHARACTERISTICS_SEI
     1022  Void  setSEIAlternativeTransferCharacteristicsSEIEnable( Bool b)   { m_alternativeTransferCharacteristicsSEIEnabled = b;    }
     1023  Bool  getSEIAlternativeTransferCharacteristicsSEIEnable( ) const   { return m_alternativeTransferCharacteristicsSEIEnabled; }
     1024  Void  setSEIPreferredTransferCharacteristics(UChar v)              { m_preferredTransferCharacteristics = v;    }
     1025  UChar getSEIPreferredTransferCharacteristics() const               { return m_preferredTransferCharacteristics; }
     1026#endif
    9771027  const TComSEIMasteringDisplay &getMasteringDisplaySEI() const      { return m_masteringDisplay; }
    9781028#if NH_MV
Note: See TracChangeset for help on using the changeset viewer.