Changeset 55 in SHVCSoftware for trunk/source/Lib/TLibDecoder
- Timestamp:
- 4 Mar 2013, 22:43:28 (12 years ago)
- Location:
- trunk/source
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source
- Property svn:mergeinfo changed
/branches/SHM-1.1-dev/source (added) merged: 38-49,52-53
- Property svn:mergeinfo changed
-
trunk/source/Lib/TLibDecoder/TDecCu.cpp
r17 r55 546 546 547 547 //===== get prediction signal ===== 548 #if INTRA_BL 548 #if INTRA_BL && !NO_RESIDUAL_FLAG_FOR_BLPRED 549 549 if(pcCU->isIntraBL ( uiAbsPartIdx ) ) 550 550 { … … 651 651 652 652 //===== get prediction signal ===== 653 #if INTRA_BL 653 #if INTRA_BL && !NO_RESIDUAL_FLAG_FOR_BLPRED 654 654 if(pcCU->isIntraBL ( uiAbsPartIdx ) ) 655 655 { -
trunk/source/Lib/TLibDecoder/TDecTop.cpp
r30 r55 81 81 memset(m_cIlpPic, 0, sizeof(m_cIlpPic)); 82 82 #endif 83 #if AVC_SYNTAX || SYNTAX_OUTPUT 84 m_pBLSyntaxFile = NULL; 85 #endif 83 86 84 87 } … … 335 338 336 339 m_cGopDecoder.filterPicture(pcPic); 340 341 #if SYNTAX_OUTPUT 342 pcPic->wrireBLSyntax( getBLSyntaxFile(), SYNTAX_BYTES ); 343 #endif 337 344 338 345 TComSlice::sortPicList( m_cListPic ); // sorting for application output … … 554 561 if (m_bFirstSliceInPicture) 555 562 { 556 557 563 #if AVC_BASE 558 564 if( m_layerId == 1 ) 559 565 { 560 566 TComPic* pBLPic = (*m_ppcTDecTop[0]->getListPic()->begin()); 561 FILE* pFile= m_ppcTDecTop[0]->getBLReconFile();562 UInt uiWidth = pBLPic->getPicYuvRec()->getWidth();563 UInt uiHeight = pBLPic->getPicYuvRec()->getHeight();567 fstream* pFile = m_ppcTDecTop[0]->getBLReconFile(); 568 UInt uiWidth = pBLPic->getPicYuvRec()->getWidth() - pBLPic->getPicYuvRec()->getPicCropLeftOffset() - pBLPic->getPicYuvRec()->getPicCropRightOffset();; 569 UInt uiHeight = pBLPic->getPicYuvRec()->getHeight() - pBLPic->getPicYuvRec()->getPicCropTopOffset() - pBLPic->getPicYuvRec()->getPicCropBottomOffset(); 564 570 565 if( pFile ) 566 { 567 fseek( pFile, m_apcSlicePilot->getPOC() * uiWidth * uiHeight * 3 / 2, SEEK_SET ); 571 if( pFile->good() ) 572 { 573 UInt64 uiPos = (UInt64) m_apcSlicePilot->getPOC() * uiWidth * uiHeight * 3 / 2; 574 575 pFile->seekg((UInt)uiPos, ios::beg ); 568 576 569 577 Pel* pPel = pBLPic->getPicYuvRec()->getLumaAddr(); … … 573 581 for( Int j = 0; j < uiWidth; j++ ) 574 582 { 575 pPel[j] = fgetc( pFile);583 pPel[j] = pFile->get(); 576 584 } 577 585 pPel += uiStride; … … 584 592 for( Int j = 0; j < uiWidth/2; j++ ) 585 593 { 586 pPel[j] = fgetc( pFile);594 pPel[j] = pFile->get(); 587 595 } 588 596 pPel += uiStride; … … 595 603 for( Int j = 0; j < uiWidth/2; j++ ) 596 604 { 597 pPel[j] = fgetc( pFile);605 pPel[j] = pFile->get(); 598 606 } 599 607 pPel += uiStride; … … 737 745 { 738 746 pcSlice->checkCRA(pcSlice->getRPS(), m_pocCRA, m_prevRAPisBLA, m_cListPic); 739 #if !REF_IDX_FRAMEWORK 747 #if !REF_IDX_FRAMEWORK || AVC_SYNTAX 740 748 // Set reference list 741 749 pcSlice->setRefPicList( m_cListPic ); … … 747 755 #if AVC_BASE 748 756 pcSlice->setBaseColPic ( *m_ppcTDecTop[0]->getListPic()->begin() ); 757 #if AVC_SYNTAX 758 TComPic* pBLPic = pcSlice->getBaseColPic(); 759 if( pcSlice->getPOC() == 0 ) 760 { 761 // initialize partition order. 762 UInt* piTmp = &g_auiZscanToRaster[0]; 763 initZscanToRaster( pBLPic->getPicSym()->getMaxDepth() + 1, 1, 0, piTmp ); 764 initRasterToZscan( pBLPic->getPicSym()->getMaxCUWidth(), pBLPic->getPicSym()->getMaxCUHeight(), pBLPic->getPicSym()->getMaxDepth() + 1 ); 765 } 766 pBLPic->getSlice( 0 )->initBaseLayerRPL( pcSlice ); 767 pBLPic->readBLSyntax( m_ppcTDecTop[0]->getBLSyntaxFile(), SYNTAX_BYTES ); 768 #endif 769 749 770 #else 750 771 TDecTop *pcTDecTop = (TDecTop *)getLayerDec( m_layerId-1 ); … … 767 788 768 789 #if REF_IDX_FRAMEWORK 790 #if !AVC_SYNTAX 769 791 // Set reference list 770 792 pcSlice->setRefPicList( m_cListPic ); 793 #endif 771 794 if(m_layerId > 0) 772 795 { … … 979 1002 { 980 1003 #if SVC_UPSAMPLING 1004 #if AVC_SYNTAX 1005 TComSPS* sps = new TComSPS(); 1006 pBLPic->create( m_ppcTDecTop[0]->getBLWidth(), m_ppcTDecTop[0]->getBLHeight(), g_uiMaxCUWidth, g_uiMaxCUHeight, g_uiMaxCUDepth, sps, true); 1007 #else 981 1008 pBLPic->create( m_ppcTDecTop[0]->getBLWidth(), m_ppcTDecTop[0]->getBLHeight(), g_uiMaxCUWidth, g_uiMaxCUHeight, g_uiMaxCUDepth, NULL, true); 1009 #endif 982 1010 #else 983 1011 pBLPic->create( m_ppcTDecTop[0]->getBLWidth(), m_ppcTDecTop[0]->getBLHeight(), g_uiMaxCUWidth, g_uiMaxCUHeight, g_uiMaxCUDepth, true); -
trunk/source/Lib/TLibDecoder/TDecTop.h
r28 r55 127 127 TDecTop** m_ppcTDecTop; 128 128 #if AVC_BASE 129 FILE*m_pBLReconFile;129 fstream* m_pBLReconFile; 130 130 Int m_iBLSourceWidth; 131 131 Int m_iBLSourceHeight; 132 132 #endif 133 133 #endif 134 #if AVC_SYNTAX || SYNTAX_OUTPUT 135 fstream* m_pBLSyntaxFile; 136 #endif 134 137 #if REF_IDX_FRAMEWORK 135 138 TComPic* m_cIlpPic[MAX_NUM_REF]; ///< Inter layer Prediction picture = upsampled picture … … 165 168 TDecTop* getLayerDec(UInt layer) { return m_ppcTDecTop[layer]; } 166 169 #if AVC_BASE 167 Void setBLReconFile( FILE* pFile ) { m_pBLReconFile = pFile; }168 FILE*getBLReconFile() { return m_pBLReconFile; }170 Void setBLReconFile( fstream* pFile ) { m_pBLReconFile = pFile; } 171 fstream* getBLReconFile() { return m_pBLReconFile; } 169 172 Void setBLsize( Int iWidth, Int iHeight ) { m_iBLSourceWidth = iWidth; m_iBLSourceHeight = iHeight; } 170 173 Int getBLWidth() { return m_iBLSourceWidth; } 171 174 Int getBLHeight() { return m_iBLSourceHeight; } 172 175 #endif 176 #endif 177 #if AVC_SYNTAX || SYNTAX_OUTPUT 178 Void setBLSyntaxFile( fstream* pFile ) { m_pBLSyntaxFile = pFile; } 179 fstream* getBLSyntaxFile() { return m_pBLSyntaxFile; } 173 180 #endif 174 181 #if REF_IDX_FRAMEWORK
Note: See TracChangeset for help on using the changeset viewer.