Changeset 767 in 3DVCSoftware for branches/HTM-9.2-dev0/source/Lib/TLibEncoder/TEncCavlc.cpp
- Timestamp:
- 12 Jan 2014, 04:39:11 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-9.2-dev0/source/Lib/TLibEncoder/TEncCavlc.cpp
r766 r767 282 282 WRITE_FLAG( pcPPS->getSliceHeaderExtensionPresentFlag() ? 1 : 0, "slice_segment_header_extension_present_flag"); 283 283 284 #if ! DLT_DIFF_CODING_IN_PPS284 #if !H_3D 285 285 WRITE_FLAG( 0, "pps_extension_flag" ); 286 286 #else … … 291 291 } 292 292 293 #if DLT_DIFF_CODING_IN_PPS293 #if H_3D 294 294 Void TEncCavlc::codePPSExtension ( TComPPS* pcPPS ) 295 295 { … … 300 300 // Step 1) decoding DLT tables based on the number of depth layers, and 301 301 // Step 2) mapping DLT tables to the depth layers 302 // as descri pted in the 3D-HEVC WD.302 // as described in the 3D-HEVC WD. 303 303 TComVPS* pcVPS = pcPPS->getSPS()->getVPS(); 304 304 … … 857 857 } 858 858 #endif 859 #if !CAM_HLS_F0136_F0045_F0082860 if (!depthFlag )861 {862 WRITE_UVLC( pcSPS->getCamParPrecision(), "cp_precision" );863 WRITE_FLAG( pcSPS->hasCamParInSliceHeader() ? 1 : 0, "cp_in_slice_header_flag" );864 if( !pcSPS->hasCamParInSliceHeader() )865 {866 for( UInt uiIndex = 0; uiIndex < viewIndex; uiIndex++ )867 {868 WRITE_SVLC( pcSPS->getCodedScale ()[ uiIndex ], "cp_scale" );869 WRITE_SVLC( pcSPS->getCodedOffset ()[ uiIndex ], "cp_off" );870 WRITE_SVLC( pcSPS->getInvCodedScale ()[ uiIndex ] + pcSPS->getCodedScale ()[ uiIndex ], "cp_inv_scale_plus_scale" );871 WRITE_SVLC( pcSPS->getInvCodedOffset()[ uiIndex ] + pcSPS->getCodedOffset()[ uiIndex ], "cp_inv_off_plus_off" );872 }873 }874 }875 #endif876 859 } 877 860 #endif … … 1545 1528 WRITE_FLAG( pcVPS->getVpsDepthModesFlag( i ) ? 1 : 0 , "vps_depth_modes_flag[i]" ); 1546 1529 //WRITE_FLAG( pcVPS->getLimQtPredFlag ( i ) ? 1 : 0 , "lim_qt_pred_flag[i]" ); 1547 #if H_3D_DIM_DLT1548 #if !DLT_DIFF_CODING_IN_PPS1549 if( pcVPS->getVpsDepthModesFlag( i ) )1550 {1551 WRITE_FLAG( pcVPS->getUseDLTFlag( i ) ? 1 : 0, "dlt_flag[i]" );1552 }1553 if( pcVPS->getUseDLTFlag( i ) )1554 {1555 // code mapping1556 WRITE_UVLC(pcVPS->getNumDepthValues(i), "num_depth_values_in_dlt[i]");1557 for(Int d=0; d<pcVPS->getNumDepthValues(i); d++)1558 {1559 WRITE_UVLC( pcVPS->idx2DepthValue(i, d), "dlt_depth_value[i][d]" );1560 }1561 }1562 #endif1563 #endif1564 1530 #if H_3D_INTER_SDC 1565 1531 WRITE_FLAG( pcVPS->getInterSDCFlag( i ) ? 1 : 0, "depth_inter_SDC_flag" ); … … 1568 1534 } 1569 1535 } 1570 #if CAM_HLS_F0136_F0045_F00821571 1536 WRITE_UVLC( pcVPS->getCamParPrecision(), "cp_precision" ); 1572 1537 for (UInt viewIndex=0; viewIndex<pcVPS->getNumViews(); viewIndex++) … … 1588 1553 } 1589 1554 } 1590 #endif1591 1555 #if H_3D_TMVP 1592 1556 WRITE_FLAG( pcVPS->getIvMvScalingFlag( ) ? 1 : 0 , "iv_mv_scaling_flag" ); … … 2036 2000 } 2037 2001 } 2038 #if CAM_HLS_F0044 2039 #if CAM_HLS_F0136_F0045_F0082 2002 #if H_3D 2040 2003 if( pcSlice->getVPS()->hasCamParInSliceHeader( pcSlice->getViewIndex() ) && !pcSlice->getIsDepth() ) 2041 #else2042 if( pcSlice->getSPS()->hasCamParInSliceHeader() && !pcSlice->getIsDepth() )2043 #endif2044 2004 { 2045 2005 for( UInt uiId = 0; uiId < pcSlice->getViewIndex(); uiId++ ) … … 2059 2019 #endif 2060 2020 { 2061 #if !H_3D || CAM_HLS_F00442062 2021 WRITE_UVLC(0,"slice_header_extension_length"); 2063 #else2064 WRITE_UVLC(0,"slice_header_extension_length"); //<- this element needs to be set to the correct value!!2065 #if CAM_HLS_F0136_F0045_F00822066 if( pcSlice->getVPS()->hasCamParInSliceHeader( pcSlice->getViewIndex() ) && !pcSlice->getIsDepth() )2067 #else2068 if( pcSlice->getSPS()->hasCamParInSliceHeader() && !pcSlice->getIsDepth() )2069 #endif2070 {2071 for( UInt uiId = 0; uiId < pcSlice->getViewIndex(); uiId++ )2072 {2073 WRITE_SVLC( pcSlice->getCodedScale ()[ uiId ], "cp_scale" );2074 WRITE_SVLC( pcSlice->getCodedOffset ()[ uiId ], "cp_off" );2075 WRITE_SVLC( pcSlice->getInvCodedScale ()[ uiId ] + pcSlice->getCodedScale ()[ uiId ], "cp_inv_scale_plus_scale" );2076 WRITE_SVLC( pcSlice->getInvCodedOffset()[ uiId ] + pcSlice->getCodedOffset()[ uiId ], "cp_inv_off_plus_off" );2077 }2078 }2079 2080 Bool sliceSegmentHeaderExtension2Flag = false;2081 WRITE_FLAG( sliceSegmentHeaderExtension2Flag ? 1 : 0 , "slice_segment_header_extension2_flag" );2082 if ( sliceSegmentHeaderExtension2Flag )2083 {2084 WRITE_UVLC(0,"slice_header_extension2_length");2085 }2086 #endif2087 2022 } 2088 2023 }
Note: See TracChangeset for help on using the changeset viewer.