Changeset 1110 in 3DVCSoftware for branches/HTM-12.2-dev2-HHI/source/Lib/TLibDecoder
- Timestamp:
- 7 Nov 2014, 14:05:45 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-12.2-dev2-HHI/source/Lib/TLibDecoder/TDecCAVLC.cpp
r1109 r1110 1071 1071 READ_FLAG( uiCode, "pps_infer_scaling_list_flag" ); pcPPS->setPpsInferScalingListFlag( uiCode == 1 ); 1072 1072 READ_CODE( 6, uiCode, "pps_scaling_list_ref_layer_id" ); pcPPS->setPpsScalingListRefLayerId( uiCode ); 1073 #if H_MV_HLS_FIX 1074 1075 UInt numRefLocOffsets;; 1076 READ_UVLC( numRefLocOffsets, "num_ref_loc_offsets" ); 1077 1078 // All of the following stuff is not needed, but allowed to be present. 1079 for (Int i = 0; i < numRefLocOffsets; i++ ) 1080 { 1081 Int iCode = 0; 1082 READ_CODE( 6, uiCode, "ref_loc_offset_layer_id" ); 1083 READ_FLAG( uiCode, "scaled_ref_layer_offset_present_flag" ); 1084 1085 if (uiCode) 1086 { 1087 READ_SVLC( iCode, "scaled_ref_layer_left_offset" ); 1088 READ_SVLC( iCode, "scaled_ref_layer_top_offset" ); 1089 READ_SVLC( iCode, "scaled_ref_layer_right_offset" ); 1090 READ_SVLC( iCode, "scaled_ref_layer_bottom_offset" ); 1091 } 1092 1093 READ_FLAG( uiCode, "ref_region_offset_present_flag" ); 1094 if (uiCode) 1095 { 1096 READ_SVLC( iCode, "ref_region_left_offset" ); 1097 READ_SVLC( iCode, "ref_region_top_offset" ); 1098 READ_SVLC( iCode, "ref_region_right_offset" ); 1099 READ_SVLC( iCode, "ref_region_bottom_offset" ); 1100 } 1101 1102 READ_FLAG( uiCode, "resample_phase_set_present_flag" ); 1103 if (uiCode) 1104 { 1105 READ_UVLC( uiCode, "phase_hor_luma" ); 1106 READ_UVLC( uiCode, "phase_ver_luma" ); 1107 READ_UVLC( uiCode, "phase_hor_chroma_plus8" ); 1108 READ_UVLC( uiCode, "phase_ver_chroma_plus8" ); 1109 } 1110 } 1111 READ_FLAG( uiCode, "colour_mapping_enabled_flag" ); 1112 // This is required to equal to 0 for Multiview Main profile. 1113 assert( uiCode == 0 ); 1114 #else 1073 1115 READ_UVLC( uiCode, "num_ref_loc_offsets" ); assert( uiCode == 0 ); 1116 #endif 1074 1117 } 1075 1118 … … 1394 1437 for( Int i = 1; i < pcVPS->getNumOutputLayerSets( ); i++ ) 1395 1438 { 1439 #if H_MV_HLS_FIX 1440 if( pcVPS->getNumLayerSets() > 2 && i >= pcVPS->getNumLayerSets( ) ) 1441 #else 1396 1442 if( i >= pcVPS->getNumLayerSets( ) ) 1443 #endif 1397 1444 { 1398 1445 READ_CODE( pcVPS->getLayerSetIdxForOlsMinus1Len( i ), uiCode, "layer_set_idx_for_ols_minus1[i]" ); pcVPS->setLayerSetIdxForOlsMinus1( i, uiCode ); … … 1465 1512 1466 1513 READ_FLAG( uiCode, "max_one_active_ref_layer_flag" ); pcVPS->setMaxOneActiveRefLayerFlag ( uiCode == 1 ); 1467 #if H_MV_HLS7_GEN 1514 1515 #if H_MV_HLS7_GEN || H_MV_HLS_FIX 1468 1516 READ_FLAG( uiCode, "vps_poc_lsb_aligned_flag" ); pcVPS->setVpsPocLsbAlignedFlag( uiCode == 1 ); 1469 1517 #endif … … 1515 1563 parseVPSVUI( pcVPS ); 1516 1564 } 1565 #if H_MV_HLS_FIX 1566 else 1567 #endif 1517 1568 { 1518 1569 TComVPSVUI* pcVPSVUI = pcVPS->getVPSVUI( ); … … 2129 2180 rpcSlice->checkCrossLayerBlaFlag( ); 2130 2181 2131 #if !H_MV_HLS7_GEN 2182 #if !H_MV_HLS7_GEN && !H_MV_HLS_FIX 2132 2183 if ( rpcSlice->getPPS()->getNumExtraSliceHeaderBits() > esb ) 2133 2184 { … … 2838 2889 2839 2890 // Derive the value of PocMs8bValRequiredFlag 2891 #if !H_MV_HLS_FIX 2840 2892 rpcSlice->setPocMsbValRequiredFlag( rpcSlice->getCraPicFlag() || rpcSlice->getBlaPicFlag() 2841 2893 /* || TODO related to vps_poc_lsb_aligned_flag */ 2842 2894 ); 2843 2895 #endif 2896 2897 #if H_MV_HLS_FIX 2898 if( !rpcSlice->getPocMsbValRequiredFlag() && rpcSlice->getVPS()->getVpsPocLsbAlignedFlag() ) 2899 #else 2844 2900 if( !rpcSlice->getPocMsbValRequiredFlag() /* TODO && rpcSlice->getVPS()->getVpsPocLsbAlignedFlag() */ ) 2901 #endif 2845 2902 { 2846 2903 READ_FLAG( uiCode, "poc_msb_val_present_flag" ); rpcSlice->setPocMsbValPresentFlag( uiCode == 1 );
Note: See TracChangeset for help on using the changeset viewer.