Changeset 479 in 3DVCSoftware for branches/HTM-DEV-0.3-dev2/source/Lib/TLibEncoder/TEncCavlc.cpp
- Timestamp:
- 18 Jun 2013, 23:24:53 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-DEV-0.3-dev2/source/Lib/TLibEncoder/TEncCavlc.cpp
r478 r479 581 581 WRITE_FLAG( 0, "sps_extension_flag" ); 582 582 #endif 583 #if H_3D_IV_MERGE584 if( pcSPS->getViewIndex() || pcSPS->isDepth() )585 {586 WRITE_FLAG( 0, "base_view_flag" );587 if( pcSPS->isDepth() )588 {589 WRITE_FLAG( 1, "depth_flag" );590 WRITE_UVLC( pcSPS->getViewIndex(), "view_idx" );591 }592 else593 {594 WRITE_FLAG( 0, "depth_flag" );595 WRITE_UVLC( pcSPS->getViewIndex() - 1, "view_idx_minus1" );596 WRITE_UVLC( pcSPS->getPredDepthMapGeneration(), "Pdm_generation" );597 if( pcSPS->getPredDepthMapGeneration() )598 {599 WRITE_UVLC( pcSPS->getMultiviewMvPredMode(), "multi_view_mv_pred_mode" );600 }601 }602 }603 else604 {605 WRITE_FLAG( 1, "base_view_flag" );606 }607 #endif608 583 } 609 584 … … 766 741 } 767 742 } 743 #if H_3D_GEN 744 WRITE_FLAG( 1, "vps_extension2_flag" ); 745 for( Int layer = 0; layer <= pcVPS->getMaxLayers() - 1; layer++ ) 746 { 747 if (layer != 0) 748 { 749 if ( !( pcVPS->getDepthId( layer ) == 1 ) ) 750 { 751 #if H_3D_IV_MERGE 752 WRITE_FLAG( pcVPS->getIvMvPredFlag(layer) ? 1 : 0 , "ivMvPredFlag[i]"); 753 #endif 754 } 755 } 756 } 757 #else 768 758 WRITE_FLAG( 0, "vps_extension2_flag" ); 759 #endif 769 760 #else 770 761 WRITE_FLAG( 0, "vps_extension_flag" ); … … 1104 1095 { 1105 1096 #if H_3D_IV_MERGE 1106 WRITE_UVLC(((pcSlice->getSPS()->getMultiviewMvPredMode() & PDM_USE_FOR_MERGE) == PDM_USE_FOR_MERGE? MRG_MAX_NUM_CANDS_MEM: MRG_MAX_NUM_CANDS) - pcSlice->getMaxNumMergeCand(), "five_minus_max_num_merge_cand"); 1097 Bool ivMvPredFlag = pcSlice->getVPS()->getIvMvPredFlag( pcSlice->getLayerIdInVps() ) ; 1098 WRITE_UVLC( ( ivMvPredFlag ? MRG_MAX_NUM_CANDS_MEM : MRG_MAX_NUM_CANDS ) - pcSlice->getMaxNumMergeCand(), "five_minus_max_num_merge_cand"); 1107 1099 #else 1108 1100 WRITE_UVLC(MRG_MAX_NUM_CANDS - pcSlice->getMaxNumMergeCand(), "five_minus_max_num_merge_cand");
Note: See TracChangeset for help on using the changeset viewer.