Changeset 705 in SHVCSoftware for branches/SHM-6-dev/source/Lib/TLibDecoder


Ignore:
Timestamp:
19 Apr 2014, 06:59:58 (11 years ago)
Author:
seregin
Message:

change the conformance input to be not multiplied by SubWidthC and SubHeightC, it should be a lossless change

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/SHM-6-dev/source/Lib/TLibDecoder/TDecTop.cpp

    r704 r705  
    15561556        Int heightBL  = pcSlice->getBaseColPic(refLayerIdc)->getPicYuvRec()->getHeight();
    15571557#if Q0200_CONFORMANCE_BL_SIZE
    1558         Window &confBL = pcSlice->getBaseColPic(refLayerIdc)->getConformanceWindow();
    1559 #if REPN_FORMAT_IN_VPS
    1560 UInt chromaFormatIdc =  pcSlice->getBaseColPic(refLayerIdc)->getSlice(0)->getChromaFormatIdc();
    1561 Int xScal = TComSPS::getWinUnitX( chromaFormatIdc );
    1562 Int yScal = TComSPS::getWinUnitY( chromaFormatIdc );
    1563 confBL.setWindowBottomOffset(confBL.getWindowBottomOffset()*yScal);
    1564 confBL.setWindowTopOffset(confBL.getWindowTopOffset()*yScal);
    1565 confBL.setWindowLeftOffset(confBL.getWindowLeftOffset()*xScal);
    1566 confBL.setWindowRightOffset(confBL.getWindowRightOffset()*xScal);
    1567 #endif
    1568         widthBL  -= confBL.getWindowLeftOffset() + confBL.getWindowRightOffset();
    1569         heightBL -= confBL.getWindowTopOffset() + confBL.getWindowBottomOffset();
     1558        Int chromaFormatIdc = pcSlice->getBaseColPic(refLayerIdc)->getSlice(0)->getChromaFormatIdc();
     1559        const Window &confBL = pcSlice->getBaseColPic(refLayerIdc)->getConformanceWindow();
     1560        widthBL  -= ( confBL.getWindowLeftOffset() + confBL.getWindowRightOffset() ) * TComSPS::getWinUnitX( chromaFormatIdc );
     1561        heightBL -= ( confBL.getWindowTopOffset() + confBL.getWindowBottomOffset() ) * TComSPS::getWinUnitY( chromaFormatIdc );
    15701562#endif
    15711563        Int widthEL   = pcPic->getPicYuvRec()->getWidth()  - scalEL.getWindowLeftOffset() - scalEL.getWindowRightOffset();
     
    16281620        }
    16291621        pcSlice->setFullPelBaseRec ( refLayerIdc, pcPic->getFullPelBaseRec(refLayerIdc) );
    1630 #if REPN_FORMAT_IN_VPS && Q0200_CONFORMANCE_BL_SIZE
    1631 confBL.setWindowBottomOffset(confBL.getWindowBottomOffset()/yScal);
    1632 confBL.setWindowTopOffset(confBL.getWindowTopOffset()/yScal);
    1633 confBL.setWindowLeftOffset(confBL.getWindowLeftOffset()/xScal);
    1634 confBL.setWindowRightOffset(confBL.getWindowRightOffset()/xScal);
    1635 #endif
    16361622#endif
    16371623      }
Note: See TracChangeset for help on using the changeset viewer.