Changeset 213 in 3DVCSoftware for branches/HTM-4.0.1-VSP-dev0/source/Lib/TLibEncoder/TEncGOP.cpp
- Timestamp:
- 31 Dec 2012, 18:33:14 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-4.0.1-VSP-dev0/source/Lib/TLibEncoder/TEncGOP.cpp
r193 r213 246 246 247 247 std::vector<TComAPS>& vAPS = m_pcEncTop->getAPS(); 248 #if VIDYO_VPS_INTEGRATION 248 #if VIDYO_VPS_INTEGRATION|QC_MVHEVC_B0046 249 249 m_pcSliceEncoder->initEncSlice ( pcPic, iPOCLast, uiPOCCurr, iNumPicRcvd, iGOPid, pcSlice, m_pcEncTop->getEncTop()->getVPS(), m_pcEncTop->getSPS(), m_pcEncTop->getPPS() ); 250 250 #else … … 298 298 if( pcSlice->getSliceType() == B_SLICE ) 299 299 { 300 if( m_pcCfg->getGOPEntry( (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDV) ? MAX_GOP : iGOPid ).m_sliceType == 'P' ) { pcSlice->setSliceType( P_SLICE ); } 301 } 300 #if QC_REM_IDV_B0046 301 if( m_pcCfg->getGOPEntry(pcSlice->getSPS()->getViewId() && ((getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDR) || (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_CRA))? MAX_GOP : iGOPid ).m_sliceType == 'P' ) { pcSlice->setSliceType( P_SLICE ); } 302 #else 303 if( m_pcCfg->getGOPEntry( (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDV) ? MAX_GOP : iGOPid ).m_sliceType == 'P' ) { pcSlice->setSliceType( P_SLICE ); } 304 #endif 305 } 302 306 303 307 // Set the nal unit type … … 333 337 334 338 #if VSP_SLICE_HEADER && VSP_CFG 339 #if QC_REM_IDV_B0046 340 pcSlice->setNumVspRefPics( m_pcCfg->getGOPEntry( pcSlice->getSPS()->getViewId() && ((getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDR) || (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_CRA))? MAX_GOP : iGOPid ).m_numVSPRefPics ); 341 #else 335 342 pcSlice->setNumVspRefPics( m_pcCfg->getGOPEntry( (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDV) ? MAX_GOP : iGOPid ).m_numVSPRefPics ); 343 #endif 336 344 pcSlice->setVspFlag( m_pcEncTop->getUseVSP() && pcSlice->getNumVspRefPics() > 0 ); 337 345 for( UInt i = 0; i < pcSlice->getNumVspRefPics(); i++ ) 338 346 { 347 #if QC_REM_IDV_B0046 348 pcSlice->setVspRefPos( REF_PIC_LIST_0, i, m_pcCfg->getGOPEntry( pcSlice->getSPS()->getViewId() && ((getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDR) || (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_CRA))? MAX_GOP : iGOPid ).m_VSPRefPosL0[i] ); 349 #else 339 350 pcSlice->setVspRefPos( REF_PIC_LIST_0, i, m_pcCfg->getGOPEntry( (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDV) ? MAX_GOP : iGOPid ).m_VSPRefPosL0[i] ); 351 #endif 340 352 if( pcSlice->getSliceType() == B_SLICE ) 341 353 { 354 #if QC_REM_IDV_B0046 355 pcSlice->setVspRefPos( REF_PIC_LIST_1, i, m_pcCfg->getGOPEntry( pcSlice->getSPS()->getViewId() && ((getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDR) || (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_CRA))? MAX_GOP : iGOPid ).m_VSPRefPosL1[i] ); 356 #else 342 357 pcSlice->setVspRefPos( REF_PIC_LIST_1, i, m_pcCfg->getGOPEntry( (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDV) ? MAX_GOP : iGOPid ).m_VSPRefPosL1[i] ); 358 #endif 343 359 } 344 360 } … … 361 377 || pcSlice->getVspRefPos( REF_PIC_LIST_1, 0 ) == 0 362 378 ) ? 0 : 1 ); 379 #if !QC_REM_IDV_B0046 363 380 pcSlice->setNumRefIdx( REF_PIC_LIST_0, min( m_pcCfg->getGOPEntry( (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDV) ? MAX_GOP : iGOPid ).m_numRefPicsActive + NumberOfVspRefsL0, (pcSlice->getRPS()->getNumberOfPictures() + pcSlice->getSPS()->getNumberOfUsableInterViewRefs() + NumberOfVspRefsL0) ) ); 364 381 pcSlice->setNumRefIdx( REF_PIC_LIST_1, min( m_pcCfg->getGOPEntry( (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDV) ? MAX_GOP : iGOPid ).m_numRefPicsActive + NumberOfVspRefsL1, (pcSlice->getRPS()->getNumberOfPictures() + pcSlice->getSPS()->getNumberOfUsableInterViewRefs() + NumberOfVspRefsL1) ) ); 382 #else 383 Bool bNalRAP = ((getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_CRA) || (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDR)) && (pcSlice->getSPS()->getViewId()) ? 1: 0; 384 pcSlice->setNumRefIdx( REF_PIC_LIST_0, min( m_pcCfg->getGOPEntry( bNalRAP ? MAX_GOP : iGOPid ).m_numRefPicsActive + NumberOfVspRefsL0, (pcSlice->getRPS()->getNumberOfPictures() + pcSlice->getSPS()->getNumberOfUsableInterViewRefs() + NumberOfVspRefsL0) ) ); 385 pcSlice->setNumRefIdx( REF_PIC_LIST_1, min( m_pcCfg->getGOPEntry( bNalRAP ? MAX_GOP : iGOPid ).m_numRefPicsActive + NumberOfVspRefsL1, (pcSlice->getRPS()->getNumberOfPictures() + pcSlice->getSPS()->getNumberOfUsableInterViewRefs() + NumberOfVspRefsL1) ) ); 386 #endif 365 387 #else 366 388 Int NumberOfVspRefs = ( ( pcPic->getViewId()==0 367 389 || (m_pcEncTop->getVSPDepthDisable() && m_pcEncTop->getIsDepth()) 368 390 #if VSP_SLICE_HEADER 369 || ! pcSlice->getVspFlag()391 || !m_pcEncTop->getUseVSP() 370 392 #endif 371 393 ) ? 0 : 1 ); 394 #if !QC_REM_IDV_B0046 372 395 pcSlice->setNumRefIdx( REF_PIC_LIST_0, min( m_pcCfg->getGOPEntry( (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDV) ? MAX_GOP : iGOPid ).m_numRefPicsActive + NumberOfVspRefs, (pcSlice->getRPS()->getNumberOfPictures() + pcSlice->getSPS()->getNumberOfUsableInterViewRefs() + NumberOfVspRefs) ) ); 373 396 pcSlice->setNumRefIdx( REF_PIC_LIST_1, min( m_pcCfg->getGOPEntry( (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDV) ? MAX_GOP : iGOPid ).m_numRefPicsActive + NumberOfVspRefs, (pcSlice->getRPS()->getNumberOfPictures() + pcSlice->getSPS()->getNumberOfUsableInterViewRefs() + NumberOfVspRefs) ) ); 374 #endif 375 #else 397 #else 398 Bool bNalRAP = ((getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_CRA) || (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDR)) && (pcSlice->getSPS()->getViewId()) ? 1: 0; 399 pcSlice->setNumRefIdx( REF_PIC_LIST_0, min( m_pcCfg->getGOPEntry( bNalRAP ? MAX_GOP : iGOPid ).m_numRefPicsActive + NumberOfVspRefsL0, (pcSlice->getRPS()->getNumberOfPictures() + pcSlice->getSPS()->getNumberOfUsableInterViewRefs() + NumberOfVspRefsL0) ) ); 400 pcSlice->setNumRefIdx( REF_PIC_LIST_1, min( m_pcCfg->getGOPEntry( bNalRAP ? MAX_GOP : iGOPid ).m_numRefPicsActive + NumberOfVspRefsL1, (pcSlice->getRPS()->getNumberOfPictures() + pcSlice->getSPS()->getNumberOfUsableInterViewRefs() + NumberOfVspRefsL1) ) ); 401 #endif 402 #endif 403 #else 404 #if !QC_REM_IDV_B0046 376 405 pcSlice->setNumRefIdx( REF_PIC_LIST_0, min( m_pcCfg->getGOPEntry( (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDV) ? MAX_GOP : iGOPid ).m_numRefPicsActive, (pcSlice->getRPS()->getNumberOfPictures() + pcSlice->getSPS()->getNumberOfUsableInterViewRefs()) ) ); 377 406 pcSlice->setNumRefIdx( REF_PIC_LIST_1, min( m_pcCfg->getGOPEntry( (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDV) ? MAX_GOP : iGOPid ).m_numRefPicsActive, (pcSlice->getRPS()->getNumberOfPictures() + pcSlice->getSPS()->getNumberOfUsableInterViewRefs()) ) ); 378 #endif 379 407 #else 408 409 Bool bNalRAP = ((getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_CRA) || (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDR)) && (pcSlice->getSPS()->getViewId()) ? 1: 0; 410 pcSlice->setNumRefIdx( REF_PIC_LIST_0, min( m_pcCfg->getGOPEntry( bNalRAP ? MAX_GOP : iGOPid ).m_numRefPicsActive, (pcSlice->getRPS()->getNumberOfPictures() + pcSlice->getSPS()->getNumberOfUsableInterViewRefs()) ) ); 411 pcSlice->setNumRefIdx( REF_PIC_LIST_1, min( m_pcCfg->getGOPEntry( bNalRAP ? MAX_GOP : iGOPid ).m_numRefPicsActive, (pcSlice->getRPS()->getNumberOfPictures() + pcSlice->getSPS()->getNumberOfUsableInterViewRefs()) ) ); 412 #endif 413 #endif 380 414 TComRefPicListModification* refPicListModification = pcSlice->getRefPicListModification(); 381 415 refPicListModification->setRefPicListModificationFlagL0( false ); … … 396 430 assert( tAppEncTop != NULL ); 397 431 432 433 #if FLEX_CODING_ORDER_M23723 434 TComPic * pcTexturePic; 435 if(m_pcEncTop->getIsDepth() == 1) 436 { 437 TComPicYuv * recText; 438 recText = tAppEncTop->getPicYuvFromView(m_pcEncTop->getViewId(), pcSlice->getPOC(), false ,true); 439 if(recText == NULL) 440 { 441 pcSlice->setTexturePic(NULL); 442 } 443 else 444 { 445 pcTexturePic = m_pcEncTop->getIsDepth() ? tAppEncTop->getPicFromView( m_pcEncTop->getViewId(), pcSlice->getPOC(), false ) : NULL; 446 pcSlice->setTexturePic( pcTexturePic ); 447 } 448 } 449 else 450 { 451 pcTexturePic = m_pcEncTop->getIsDepth() ? tAppEncTop->getPicFromView( m_pcEncTop->getViewId(), pcSlice->getPOC(), false ) : NULL; 452 assert( !m_pcEncTop->getIsDepth() || pcTexturePic != NULL ); 453 pcSlice->setTexturePic( pcTexturePic ); 454 } 455 456 #else 398 457 TComPic * const pcTexturePic = m_pcEncTop->getIsDepth() ? tAppEncTop->getPicFromView( m_pcEncTop->getViewId(), pcSlice->getPOC(), false ) : NULL; 399 458 assert( !m_pcEncTop->getIsDepth() || pcTexturePic != NULL ); 400 459 pcSlice->setTexturePic( pcTexturePic ); 401 460 461 #endif 402 462 std::vector<TComPic*> apcInterViewRefPics = tAppEncTop->getInterViewRefPics( m_pcEncTop->getViewId(), pcSlice->getPOC(), m_pcEncTop->getIsDepth(), pcSlice->getSPS() ); 403 463 #if VSP_N … … 418 478 m_pcEncTop->getVSPBuf()->getCurrSlice()->setPOC( pcPic->getPOC() ); 419 479 m_pcEncTop->getVSPBuf()->getCurrSlice()->setViewId( pcPic->getViewId() ); 480 m_pcEncTop->getVSPBuf()->getCurrSlice()->setViewOrderIdx( m_pcEncTop->getViewOrderIdx() ); 420 481 } 421 482 … … 435 496 if( pcSlice->getSliceType() == B_SLICE ) 436 497 { 498 #if !QC_REM_IDV_B0046 437 499 if( m_pcCfg->getGOPEntry( (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDV) ? MAX_GOP : iGOPid ).m_sliceType == 'P' ) { pcSlice->setSliceType( P_SLICE ); } 500 #else 501 Bool bRAP = ((getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_CRA) || (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDR)) && (pcSlice->getSPS()->getViewId()) ? 1: 0; 502 if( m_pcCfg->getGOPEntry( bRAP ? MAX_GOP : iGOPid ).m_sliceType == 'P' ) { pcSlice->setSliceType( P_SLICE ); } 503 #endif 438 504 } 439 505 … … 521 587 #endif 522 588 523 #if HHI_VSO_SPEEDUP_A0033524 #else525 if ( iVSOMode == 4 )526 {527 m_pcEncTop->getEncTop()->setupRenModel( pcSlice->getPOC(), pcSlice->getViewId(), m_pcEncTop->isDepthCoder() ? 1 : 0 );528 }529 else530 {531 AOT(true);532 }533 #endif534 589 535 590 #if SAIT_VSO_EST_A0033 536 m_pcRdCost->setVideoRecPicYuv( m_pcEncTop->getEncTop()->getPicYuvFromView( pcSlice->getViewId(), pcSlice->getPOC(), false, true ) ); 537 m_pcRdCost->setDepthPicYuv ( m_pcEncTop->getEncTop()->getPicYuvFromView( pcSlice->getViewId(), pcSlice->getPOC(), true, false ) ); 591 #ifdef FLEX_CODING_ORDER_M23723 592 { 593 Bool flagRec; 594 flagRec = ((m_pcEncTop->getEncTop()->getPicYuvFromView( pcSlice->getViewId(), pcSlice->getPOC(), false, true) == NULL) ? false: true); 595 m_pcRdCost->setVideoRecPicYuv( m_pcEncTop->getEncTop()->getPicYuvFromView( pcSlice->getViewId(), pcSlice->getPOC(), false, flagRec ) ); 596 m_pcRdCost->setDepthPicYuv ( m_pcEncTop->getEncTop()->getPicYuvFromView( pcSlice->getViewId(), pcSlice->getPOC(), true, false ) ); 597 } 598 #else 599 m_pcRdCost->setVideoRecPicYuv( m_pcEncTop->getEncTop()->getPicYuvFromView( pcSlice->getViewId(), pcSlice->getPOC(), false, true ) ); 600 m_pcRdCost->setDepthPicYuv ( m_pcEncTop->getEncTop()->getPicYuvFromView( pcSlice->getViewId(), pcSlice->getPOC(), true, false ) ); 601 #endif 538 602 #endif 539 603 #if LGE_WVSO_A0119 … … 780 844 // init view component and predict virtual depth map 781 845 m_pcDepthMapGenerator->initViewComponent( pcPic ); 782 #if !QC_MULTI_DIS_CAN 846 #if !QC_MULTI_DIS_CAN_A0097 783 847 m_pcDepthMapGenerator->predictDepthMap ( pcPic ); 784 848 #endif … … 791 855 #endif 792 856 857 #if QC_SIMPLE_NBDV_B0047 858 if(pcSlice->getViewId() && pcSlice->getSPS()->getMultiviewMvPredMode()) 859 { 860 Int iColPoc = pcSlice->getRefPOC(RefPicList(pcSlice->getColDir()), pcSlice->getColRefIdx()); 861 pcPic->setRapbCheck(pcPic->getDisCandRefPictures(iColPoc)); 862 } 863 #endif 793 864 while(uiNextCUAddr<uiRealEndAddress) // determine slice boundaries 794 865 { … … 849 920 #endif 850 921 #if DEPTH_MAP_GENERATION 851 #if !QC_MULTI_DIS_CAN 922 #if !QC_MULTI_DIS_CAN_A0097 852 923 // update virtual depth map 853 924 m_pcDepthMapGenerator->updateDepthMap( pcPic ); … … 906 977 if ( m_bSeqFirst ) 907 978 { 908 #if VIDYO_VPS_INTEGRATION 979 #if QC_MVHEVC_B0046 980 if(!m_pcEncTop->getLayerId()) 981 { 982 #endif 983 #if VIDYO_VPS_INTEGRATION|QC_MVHEVC_B0046 909 984 { 910 985 OutputNALUnit nalu(NAL_UNIT_VPS, true, m_pcEncTop->getLayerId()); … … 916 991 #endif 917 992 #if NAL_REF_FLAG 918 #if VIDYO_VPS_INTEGRATION 993 #if VIDYO_VPS_INTEGRATION|QC_MVHEVC_B0046 919 994 OutputNALUnit nalu(NAL_UNIT_SPS, true, m_pcEncTop->getLayerId()); 920 995 #else … … 937 1012 938 1013 #if NAL_REF_FLAG 939 #if VIDYO_VPS_INTEGRATION 1014 #if VIDYO_VPS_INTEGRATION|QC_MVHEVC_B0046 1015 #if QC_MVHEVC_B0046 940 1016 nalu = NALUnit(NAL_UNIT_PPS, true, m_pcEncTop->getLayerId()); 1017 #else 1018 nalu = NALUnit(NAL_UNIT_PPS, true, m_pcEncTop->getLayerId()); 1019 #endif 941 1020 #else 942 1021 nalu = NALUnit(NAL_UNIT_PPS, true, m_pcEncTop->getViewId(), m_pcEncTop->getIsDepth()); … … 949 1028 writeRBSPTrailingBits(nalu.m_Bitstream); 950 1029 accessUnit.push_back(new NALUnitEBSP(nalu)); 951 952 m_bSeqFirst = false; 953 } 1030 #if QC_MVHEVC_B0046 1031 } 1032 #endif 1033 m_bSeqFirst = false; 1034 } 954 1035 955 1036 /* use the main bitstream buffer for storing the marshalled picture */ … … 1069 1150 #if NAL_REF_FLAG 1070 1151 OutputNALUnit nalu( pcSlice->getNalUnitType(), pcSlice->isReferenced(), 1071 #if !VIDYO_VPS_INTEGRATION 1152 #if !VIDYO_VPS_INTEGRATION &!QC_MVHEVC_B0046 1072 1153 m_pcEncTop->getViewId(), m_pcEncTop->getIsDepth(), pcSlice->getTLayer() ); 1073 1154 #else … … 1206 1287 m_pcSbacCoder->load( &pcSbacCoders[0] ); 1207 1288 1289 1208 1290 pcSlice->setTileOffstForMultES( uiOneBitstreamPerSliceLength ); 1209 1291 if (!bEntropySlice) 1210 1292 { 1211 #if OL_DEPTHLIMIT_A0044 //start dumping partition information1212 m_pcSliceEncoder->setPartDumpFlag(1);1213 #endif1214 1293 pcSlice->setTileLocationCount ( 0 ); 1215 1294 m_pcSliceEncoder->encodeSlice(pcPic, pcBitstreamRedirect, pcSubstreamsOut); // redirect is only used for CAVLC tile position info. 1216 #if OL_DEPTHLIMIT_A0044 //stop dumping partition information1217 m_pcSliceEncoder->setPartDumpFlag(0);1218 #endif1219 1295 } 1220 1296 else 1221 1297 { 1222 #if OL_DEPTHLIMIT_A0044 //start dumping partition information1223 m_pcSliceEncoder->setPartDumpFlag(1);1224 #endif1225 1298 m_pcSliceEncoder->encodeSlice(pcPic, &nalu.m_Bitstream, pcSubstreamsOut); // nalu.m_Bitstream is only used for CAVLC tile position info. 1226 #if OL_DEPTHLIMIT_A0044 //stop dumping partition information 1227 m_pcSliceEncoder->setPartDumpFlag(0); 1228 #endif 1229 } 1299 } 1300 1230 1301 1231 1302 { … … 1557 1628 { 1558 1629 #if NAL_REF_FLAG 1559 #if VIDYO_VPS_INTEGRATION 1630 #if VIDYO_VPS_INTEGRATION | QC_MVHEVC_B0046 1560 1631 OutputNALUnit nalu(NAL_UNIT_APS, true, m_pcEncTop->getLayerId()); 1561 1632 #else … … 1623 1694 1624 1695 #if NAL_REF_FLAG 1625 #if VIDYO_VPS_INTEGRATION 1696 #if VIDYO_VPS_INTEGRATION | QC_MVHEVC_B0046 1626 1697 OutputNALUnit nalu(NAL_UNIT_SEI, false, m_pcEncTop->getLayerId()); 1627 1698 #else … … 2061 2132 case NAL_UNIT_CODED_SLICE: return "SLICE"; 2062 2133 #if H0566_TLA 2134 #if !QC_REM_IDV_B0046 2063 2135 case NAL_UNIT_CODED_SLICE_IDV: return "IDV"; 2136 #endif 2064 2137 case NAL_UNIT_CODED_SLICE_CRA: return "CRA"; 2065 2138 case NAL_UNIT_CODED_SLICE_TLA: return "TLA"; … … 2290 2363 if( bInterViewOnlySlice ) 2291 2364 { 2365 #if !QC_REM_IDV_B0046 2292 2366 return NAL_UNIT_CODED_SLICE_IDV; 2367 #else 2368 return NAL_UNIT_CODED_SLICE_IDR; 2369 #endif 2293 2370 } 2294 2371 else … … 2303 2380 if( bInterViewOnlySlice ) 2304 2381 { 2382 #if !QC_REM_IDV_B0046 2305 2383 return NAL_UNIT_CODED_SLICE_IDV; 2384 #else 2385 return NAL_UNIT_CODED_SLICE_CRA; 2386 #endif 2306 2387 } 2307 2388 else … … 2318 2399 if( bInterViewOnlySlice ) 2319 2400 { 2401 #if !QC_REM_IDV_B0046 2320 2402 return NAL_UNIT_CODED_SLICE_IDV; 2403 #else 2404 return NAL_UNIT_CODED_SLICE_IDR; 2405 #endif 2321 2406 } 2322 2407 else … … 2556 2641 2557 2642 // analyze inter-view modifications 2643 #if !QC_REM_IDV_B0046 2558 2644 GOPEntryMvc gem = m_pcCfg->getGOPEntry( (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDV) ? MAX_GOP : iGOPid ); 2645 #else 2646 Bool bRAP = ((getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_IDR) || (getNalUnitType(uiPOCCurr) == NAL_UNIT_CODED_SLICE_CRA)) && (pcSlice->getSPS()->getViewId()) ? 1:0; 2647 GOPEntryMvc gem = m_pcCfg->getGOPEntry( bRAP ? MAX_GOP : iGOPid ); 2648 #endif 2559 2649 Int numL0Modifications = 0; 2560 2650 Int numL1Modifications = 0;
Note: See TracChangeset for help on using the changeset viewer.