- Timestamp:
- 25 Apr 2014, 21:32:38 (11 years ago)
- Location:
- branches/SHM-6-dev/source/Lib
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-6-dev/source/Lib/TLibCommon/TypeDef.h
r744 r747 50 50 51 51 #define Q0177_SPS_TEMP_NESTING_FIX 1 ///< JCTVC-Q0177; Fix the inference value of sps_temporal_id_nesting_flag when it is not present 52 #define Q0177_EOS_CHECKS 1 ///< JCTVC-Q0177; Put checks on handling EOS 52 53 #define Q0142_POC_LSB_NOT_PRESENT 1 ///< JCTVC-Q0142; Add constraint checking on the value of poc_reset_idc and poc_lsb_val 53 54 #define Q0146_SSH_EXT_DATA_BIT 1 ///< JCTVC-Q0146; Bug-fix -- the SSH_EXT_DATA_BIT can have any value -- not required to be 1 -
branches/SHM-6-dev/source/Lib/TLibDecoder/TDecTop.cpp
r740 r747 85 85 m_isNoOutputPriorPics = false; 86 86 #endif 87 #if Q0177_EOS_CHECKS 88 m_isLastNALWasEos = false; 89 #endif 87 90 #if NO_CLRAS_OUTPUT_FLAG 88 91 m_noClrasOutputFlag = false; … … 2076 2079 #endif 2077 2080 xDecodeVPS(); 2081 #if Q0177_EOS_CHECKS 2082 m_isLastNALWasEos = false; 2083 #endif 2078 2084 #if AVC_BASE 2079 2085 if( m_parameterSetManagerDecoder.getPrefetchedVPS(0)->getAvcBaseLayerFlag() ) … … 2114 2120 case NAL_UNIT_PREFIX_SEI: 2115 2121 case NAL_UNIT_SUFFIX_SEI: 2122 #if Q0177_EOS_CHECKS 2123 if ( nalu.m_nalUnitType == NAL_UNIT_SUFFIX_SEI ) 2124 { 2125 assert( m_isLastNALWasEos == false ); 2126 } 2127 #endif 2116 2128 xDecodeSEI( nalu.m_Bitstream, nalu.m_nalUnitType ); 2117 2129 return false; … … 2133 2145 case NAL_UNIT_CODED_SLICE_RASL_N: 2134 2146 case NAL_UNIT_CODED_SLICE_RASL_R: 2147 #if Q0177_EOS_CHECKS 2148 if (nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_TRAIL_R || nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_TRAIL_N || 2149 nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_TSA_R || nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_TSA_N || 2150 nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_STSA_R || nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_STSA_N || 2151 nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_RADL_R || nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_RADL_N || 2152 nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_RASL_R || nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_RASL_N ) 2153 { 2154 assert( m_isLastNALWasEos == false ); 2155 } 2156 else 2157 { 2158 m_isLastNALWasEos = false; 2159 } 2160 #endif 2135 2161 #if SVC_EXTENSION 2136 2162 return xDecodeSlice(nalu, iSkipFrame, iPOCLastDisplay, curLayerId, bNewPOC); … … 2141 2167 2142 2168 case NAL_UNIT_EOS: 2169 #if Q0177_EOS_CHECKS 2170 assert( m_isLastNALWasEos == false ); 2171 //Check layer id of the nalu. if it is not 0, give a warning message and just return without doing anything. 2172 if (nalu.m_layerId > 0) 2173 { 2174 printf( "\nThis bitstream has EOS with non-zero layer id.\n" ); 2175 return false; 2176 } 2177 m_isLastNALWasEos = true; 2178 #endif 2143 2179 m_associatedIRAPType = NAL_UNIT_INVALID; 2144 2180 m_pocCRA = 0; … … 2166 2202 2167 2203 case NAL_UNIT_FILLER_DATA: 2204 #if Q0177_EOS_CHECKS 2205 assert( m_isLastNALWasEos == false ); 2206 #endif 2168 2207 return false; 2169 2208 -
branches/SHM-6-dev/source/Lib/TLibDecoder/TDecTop.h
r711 r747 162 162 Bool m_craNoRaslOutputFlag; //value of variable NoRaslOutputFlag of the last CRA pic 163 163 #endif 164 #if Q0177_EOS_CHECKS 165 Bool m_isLastNALWasEos; 166 #endif 164 167 165 168 #if SVC_EXTENSION
Note: See TracChangeset for help on using the changeset viewer.