Changeset 1211 in SHVCSoftware for branches/SHM-dev/source/Lib/TLibDecoder
- Timestamp:
- 8 Jul 2015, 23:11:18 (10 years ago)
- Location:
- branches/SHM-dev/source/Lib/TLibDecoder
- Files:
-
- 2 edited
-
NALread.cpp (modified) (2 diffs)
-
TDecTop.cpp (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-dev/source/Lib/TLibDecoder/NALread.cpp
r1029 r1211 123 123 if ( nalu.m_temporalId ) 124 124 { 125 #if !Q0108_TSA_STSA 125 #if SVC_EXTENSION 126 assert( nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_BLA_W_LP 127 && nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_BLA_W_RADL 128 && nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_BLA_N_LP 129 && nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_IDR_W_RADL 130 && nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_IDR_N_LP 131 && nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_CRA 132 && nalu.m_nalUnitType != NAL_UNIT_VPS 133 && nalu.m_nalUnitType != NAL_UNIT_SPS 134 && nalu.m_nalUnitType != NAL_UNIT_EOS); 135 #else 126 136 assert( nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_BLA_W_LP 127 137 && nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_BLA_W_RADL … … 133 143 && nalu.m_nalUnitType != NAL_UNIT_SPS 134 144 && nalu.m_nalUnitType != NAL_UNIT_EOS 135 && nalu.m_nalUnitType != NAL_UNIT_EOB ); 136 #else 137 assert( nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_BLA_W_LP 138 && nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_BLA_W_RADL 139 && nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_BLA_N_LP 140 && nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_IDR_W_RADL 141 && nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_IDR_N_LP 142 && nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_CRA 143 && nalu.m_nalUnitType != NAL_UNIT_VPS 144 && nalu.m_nalUnitType != NAL_UNIT_SPS 145 && nalu.m_nalUnitType != NAL_UNIT_EOS); 145 && nalu.m_nalUnitType != NAL_UNIT_EOB ); 146 146 #endif 147 147 } 148 148 else 149 149 { 150 #if !Q0108_TSA_STSA 150 #if SVC_EXTENSION 151 assert( nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_TSA_R 152 && nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_TSA_N 153 ); 154 #else 151 155 assert( nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_TSA_R 152 156 && nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_TSA_N 153 157 && nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_STSA_R 154 158 && nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_STSA_N ); 155 #else156 assert( nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_TSA_R157 && nalu.m_nalUnitType != NAL_UNIT_CODED_SLICE_TSA_N158 );159 159 #endif 160 160 } -
branches/SHM-dev/source/Lib/TLibDecoder/TDecTop.cpp
r1210 r1211 1188 1188 m_bFirstSliceInBitstream = false; 1189 1189 1190 // Alignment of TSA and STSA pictures across AU1191 #if !Q0108_TSA_STSA1192 if( m_apcSlicePilot->getLayerId() > 0 )1193 {1194 // Check for TSA alignment1195 if( m_apcSlicePilot->getNalUnitType() == NAL_UNIT_CODED_SLICE_TSA_N ||1196 m_apcSlicePilot->getNalUnitType() == NAL_UNIT_CODED_SLICE_TSA_R1197 )1198 {1199 for(Int dependentLayerIdx = 0; dependentLayerIdx < m_apcSlicePilot->getVPS()->getNumDirectRefLayers(m_layerId); dependentLayerIdx++)1200 {1201 TComList<TComPic*> *cListPic = getRefLayerDec( dependentLayerIdx )->getListPic();1202 TComPic* refpicLayer = m_apcSlicePilot->getRefPic(*cListPic, m_apcSlicePilot->getPOC() );1203 if( refpicLayer )1204 {1205 assert( m_apcSlicePilot->getNalUnitType() == NAL_UNIT_CODED_SLICE_TSA_N ||1206 m_apcSlicePilot->getNalUnitType() == NAL_UNIT_CODED_SLICE_TSA_R ); // TSA pictures should be aligned among depenedent layers1207 }1208 }1209 }1210 // Check for STSA alignment1211 if( m_apcSlicePilot->getNalUnitType() == NAL_UNIT_CODED_SLICE_STSA_N ||1212 m_apcSlicePilot->getNalUnitType() == NAL_UNIT_CODED_SLICE_STSA_R1213 )1214 {1215 for(Int dependentLayerIdx = 0; dependentLayerIdx < m_apcSlicePilot->getVPS()->getNumDirectRefLayers(m_layerId); dependentLayerIdx++)1216 {1217 TComList<TComPic*> *cListPic = getRefLayerDec( dependentLayerIdx )->getListPic();1218 TComPic* refpicLayer = m_apcSlicePilot->getRefPic(*cListPic, m_apcSlicePilot->getPOC() ); // STSA pictures should be aligned among dependent layers1219 if( refpicLayer )1220 1221 {1222 assert( m_apcSlicePilot->getNalUnitType() == NAL_UNIT_CODED_SLICE_STSA_N ||1223 m_apcSlicePilot->getNalUnitType() == NAL_UNIT_CODED_SLICE_STSA_R );1224 }1225 }1226 }1227 }1228 #endif1229 1230 1190 #else //SVC_EXTENSION 1231 1191 //we should only get a different poc for a new picture (with CTU address==0) … … 1260 1220 m_bFirstSliceInBitstream = false; 1261 1221 #endif //SVC_EXTENSION 1222 1262 1223 //detect lost reference picture and insert copy of earlier frame. 1263 1224 Int lostPoc;
Note: See TracChangeset for help on using the changeset viewer.