Ticket #24: 929d86a6cf7b39f3e6ed95af399944c2a99b8e70.patch

File 929d86a6cf7b39f3e6ed95af399944c2a99b8e70.patch, 2.9 KB (added by davidf, 14 years ago)

Fix meaning of --InterpFilterType=3 or 4 not being constant

  • source/App/TAppEncoder/TAppEncCfg.cpp

    commit 929d86a6cf7b39f3e6ed95af399944c2a99b8e70
    Author: David Flynn <davidf@rd.bbc.co.uk>
    Date:   Sun Aug 8 12:20:56 2010 +0000
    
        Fix meaning of --InterpFilterType=3 or 4 not being constant
    
        This patch updates the definition of enum InterpFilterType to not
        renumber entries if various options are not compiled in.  The
        implication is that the configfile/cli option values always have the
        same meaning.
    
        --InterpFilterType=3 is always IPF_TEN_DIF
        --InterpFilterType=4 is always IPF_QC_SIFO
    
        Fixes ticket:24
    
    diff --git a/source/App/TAppEncoder/TAppEncCfg.cpp b/source/App/TAppEncoder/TAppEncCfg.cpp
    index 51f2c5a..a94e42b 100644
    a b Void TAppEncCfg::xCheckParameter() 
    364364  }
    365365#endif
    366366
     367#if HHI_INTERP_FILTER && !TEN_DIRECTIONAL_INTERP
     368  xConfirmPara( m_iInterpFilterType == IPF_TEN_DIF_PLACEHOLDER, "IPF_TEN_DIF is not configurable.  Please recompile using TEN_DIRECTIONAL_INTERP." );
     369#endif
     370#if HHI_INTERP_FILTER && !defined(QC_SIFO)
     371  xConfirmPara( m_iInterpFilterType == IPF_QC_SIFO_PLACEHOLDER, "IPF_QC_SIFO is not configurable.  Please recompile using QC_SIFO." );
     372#endif
     373
    367374  xConfirmPara( m_iSymbolMode < 0 || m_iSymbolMode > 3,                                     "SymbolMode must be equal to 0, 1, 2, or 3" );
    368375  xConfirmPara( m_uiMaxPIPEDelay != 0 && m_uiMaxPIPEDelay < 64,                             "MaxPIPEBufferDelay must be greater than or equal to 64" );
    369376  m_uiMaxPIPEDelay = ( m_uiMCWThreshold > 0 ? 0 : ( m_uiMaxPIPEDelay >> 6 ) << 6 );
  • source/Lib/TLibCommon/TypeDef.h

    diff --git a/source/Lib/TLibCommon/TypeDef.h b/source/Lib/TLibCommon/TypeDef.h
    index db3ce8f..2222a96 100644
    a b enum EFF_MODE 
    427427#if HHI_INTERP_FILTER
    428428enum InterpFilterType
    429429{
    430 #if TEN_DIRECTIONAL_INTERP
    431430  IPF_SAMSUNG_DIF_DEFAULT = 0,          ///< Samsung DCT-based filter
    432431  IPF_HHI_4TAP_MOMS,                    ///< HHI 4-tap MOMS filter
    433432  IPF_HHI_6TAP_MOMS,                    ///< HHI 6-tap MOMS filter
     433# if TEN_DIRECTIONAL_INTERP
    434434  IPF_TEN_DIF                           ///< TEN directional filter
    435 #ifdef QC_SIFO
     435# else
     436  IPF_TEN_DIF_PLACEHOLDER               ///< Place holder to keep ordering if IPF_TEN_DIF not compiled-in
     437# endif
     438# ifdef QC_SIFO
    436439  ,IPF_QC_SIFO                          ///< Qualcomm Switched Interpolation Filters with Offsets
    437 #endif
    438 #else
    439   IPF_SAMSUNG_DIF_DEFAULT = 0,          ///< Samsung DCT-based filter
    440   IPF_HHI_4TAP_MOMS,                    ///< HHI 4-tap MOMS filter
    441   IPF_HHI_6TAP_MOMS                     ///< HHI 6-tap MOMS filter
    442 #ifdef QC_SIFO
    443   ,IPF_QC_SIFO                          ///< Qualcomm Switched Interpolation Filters with Offsets
    444 #endif
    445 #endif
     440# else
     441  ,IPF_QC_SIFO_PLACEHOLDER              ///< Place holder to keep ordering if IPF_QC_SIFO not compiled-in
     442# endif
    446443};
    447444#endif
    448445