Skip to content
Snippets Groups Projects
UnitTools.cpp 186 KiB
Newer Older
  • Learn to ignore specific revisions
  •   else if( ( intraModeIsEven && uiChFinalMode >= 2 && uiChFinalMode <= 30 ) || ( !intraModeIsEven && uiChFinalMode >= 39 && uiChFinalMode <= 65 ) )
      {
        typeH = DST7;
        typeV = DCT2;
      }
      else if( ( !intraModeIsEven && uiChFinalMode >= 3 && uiChFinalMode <= 29 ) || ( intraModeIsEven && uiChFinalMode >= 38 && uiChFinalMode <= 66 ) )
      {
        typeH = DCT2;
        typeV = DST7;
      }
      //Size restriction for non-DCT-II transforms
      Area tuArea = tu.blocks[compID];
      typeH = tuArea.width  <= 2 || tuArea.width  >= 32 ? DCT2 : typeH;
      typeV = tuArea.height <= 2 || tuArea.height >= 32 ? DCT2 : typeV;
    }
    #endif
    
    
    
    // other tools
    
    uint32_t getCtuAddr( const Position& pos, const PreCalcValues& pcv )
    {
      return ( pos.x >> pcv.maxCUWidthLog2 ) + ( pos.y >> pcv.maxCUHeightLog2 ) * pcv.widthInCtus;
    }