Changeset 292 in SHVCSoftware for branches/SHM-2.1-dev/source/Lib/TLibEncoder
- Timestamp:
- 18 Jun 2013, 23:11:33 (12 years ago)
- Location:
- branches/SHM-2.1-dev/source/Lib/TLibEncoder
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-2.1-dev/source/Lib/TLibEncoder/SEIwrite.cpp
r191 r292 89 89 break; 90 90 #endif 91 #if M0043_LAYERS_PRESENT_SEI 92 case SEI::LAYERS_PRESENT: 93 fprintf( g_hTrace, "=========== Layers Present SEI message ===========\n"); 94 break; 95 #endif 91 96 #if L0208_SOP_DESCRIPTION_SEI 92 97 case SEI::SOP_DESCRIPTION: … … 150 155 case SEI::TONE_MAPPING_INFO: 151 156 xWriteSEIToneMappingInfo(*static_cast<const SEIToneMappingInfo*>(&sei)); 157 break; 158 #endif 159 #if M0043_LAYERS_PRESENT_SEI 160 case SEI::LAYERS_PRESENT: 161 xWriteSEILayersPresent(*static_cast<const SEILayersPresent*>(&sei)); 152 162 break; 153 163 #endif … … 591 601 } 592 602 603 #if M0043_LAYERS_PRESENT_SEI 604 Void SEIWriter::xWriteSEILayersPresent(const SEILayersPresent& sei) 605 { 606 WRITE_UVLC( sei.m_activeVpsId, "lp_sei_active_vps_id" ); 607 for (UInt i = 0; i < sei.m_vpsMaxLayers; i++) 608 { 609 WRITE_FLAG( sei.m_layerPresentFlag[i], "layer_present_flag" ); 610 } 611 xWriteByteAlign(); 612 } 613 #endif 614 593 615 #if L0208_SOP_DESCRIPTION_SEI 594 616 Void SEIWriter::xWriteSEISOPDescription(const SEISOPDescription& sei) -
branches/SHM-2.1-dev/source/Lib/TLibEncoder/SEIwrite.h
r191 r292 70 70 Void xWriteSEIToneMappingInfo(const SEIToneMappingInfo& sei); 71 71 #endif 72 #if M0043_LAYERS_PRESENT_SEI 73 Void xWriteSEILayersPresent(const SEILayersPresent& sei); 74 #endif 72 75 #if L0208_SOP_DESCRIPTION_SEI 73 76 Void xWriteSEISOPDescription(const SEISOPDescription& sei); -
branches/SHM-2.1-dev/source/Lib/TLibEncoder/TEncCfg.h
r290 r292 289 289 Int m_gradualDecodingRefreshInfoEnabled; 290 290 Int m_decodingUnitInfoSEIEnabled; 291 #if M0043_LAYERS_PRESENT_SEI 292 Int m_layersPresentSEIEnabled; 293 #endif 291 294 #if L0208_SOP_DESCRIPTION_SEI 292 295 Int m_SOPDescriptionSEIEnabled; … … 733 736 Void setDecodingUnitInfoSEIEnabled(Int b) { m_decodingUnitInfoSEIEnabled = b; } 734 737 Int getDecodingUnitInfoSEIEnabled() { return m_decodingUnitInfoSEIEnabled; } 738 #if M0043_LAYERS_PRESENT_SEI 739 Void setLayersPresentSEIEnabled(Int b) { m_layersPresentSEIEnabled = b; } 740 Int getLayersPresentSEIEnabled() { return m_layersPresentSEIEnabled; } 741 #endif 735 742 #if L0208_SOP_DESCRIPTION_SEI 736 743 Void setSOPDescriptionSEIEnabled(Int b) { m_SOPDescriptionSEIEnabled = b; } -
branches/SHM-2.1-dev/source/Lib/TLibEncoder/TEncGOP.cpp
r291 r292 173 173 } 174 174 175 #if M0043_LAYERS_PRESENT_SEI 176 SEILayersPresent* TEncGOP::xCreateSEILayersPresent () 177 { 178 UInt i = 0; 179 SEILayersPresent *seiLayersPresent = new SEILayersPresent(); 180 seiLayersPresent->m_activeVpsId = m_pcCfg->getVPS()->getVPSId(); 181 seiLayersPresent->m_vpsMaxLayers = m_pcCfg->getVPS()->getMaxLayers(); 182 for ( ; i < seiLayersPresent->m_vpsMaxLayers; i++) 183 { 184 seiLayersPresent->m_layerPresentFlag[i] = true; 185 } 186 for ( ; i < MAX_LAYERS; i++) 187 { 188 seiLayersPresent->m_layerPresentFlag[i] = false; 189 } 190 return seiLayersPresent; 191 } 192 #endif 193 175 194 SEIFramePacking* TEncGOP::xCreateSEIFramePacking() 176 195 { … … 319 338 #endif 320 339 } 340 341 #if M0043_LAYERS_PRESENT_SEI 342 if(m_pcCfg->getLayersPresentSEIEnabled()) 343 { 344 SEILayersPresent *sei = xCreateSEILayersPresent (); 345 m_pcEntropyCoder->setBitstream(&nalu.m_Bitstream); 346 m_seiWriter.writeSEImessage(nalu.m_Bitstream, *sei, sps); 347 writeRBSPTrailingBits(nalu.m_Bitstream); 348 accessUnit.push_back(new NALUnitEBSP(nalu)); 349 delete sei; 350 } 351 #endif 321 352 322 353 if(m_pcCfg->getFramePackingArrangementSEIEnabled()) -
branches/SHM-2.1-dev/source/Lib/TLibEncoder/TEncGOP.h
r291 r292 180 180 181 181 SEIActiveParameterSets* xCreateSEIActiveParameterSets (TComSPS *sps); 182 #if M0043_LAYERS_PRESENT_SEI 183 SEILayersPresent* xCreateSEILayersPresent (); 184 #endif 182 185 SEIFramePacking* xCreateSEIFramePacking(); 183 186 SEIDisplayOrientation* xCreateSEIDisplayOrientation();
Note: See TracChangeset for help on using the changeset viewer.