Changeset 583 in SHVCSoftware for branches/SHM-5.0-dev/source/Lib/TLibDecoder


Ignore:
Timestamp:
1 Feb 2014, 00:19:46 (11 years ago)
Author:
qualcomm
Message:

JCTVC-P0204: Support for sub-bitstream property SEI message (MACRO: SUB_BITSTREAM_PROPERTY_SEI)

From: Adarsh K. Ramasubramonian <aramasub@…>

Location:
branches/SHM-5.0-dev/source/Lib/TLibDecoder
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/SHM-5.0-dev/source/Lib/TLibDecoder/SEIread.cpp

    r567 r583  
    106106    break;
    107107#endif
     108#if SUB_BITSTREAM_PROPERTY_SEI
     109    case SEI::SUB_BITSTREAM_PROPERTY:
     110      fprintf( g_hTrace, "=========== Sub-bitstream property SEI message ===========\n");
     111      break;
     112#endif
    108113  case SEI::SCALABLE_NESTING:
    109114    fprintf( g_hTrace, "=========== Scalable Nesting SEI message ===========\n");
     
    276281      xParseSEIInterLayerConstrainedTileSets((SEIInterLayerConstrainedTileSets&) *sei, payloadSize);
    277282      break;
     283#endif
     284#if SUB_BITSTREAM_PROPERTY_SEI
     285   case SEI::SUB_BITSTREAM_PROPERTY:
     286     sei = new SEISubBitstreamProperty;
     287     xParseSEISubBitstreamProperty((SEISubBitstreamProperty&) *sei);
     288     break;
    278289#endif
    279290    case SEI::SCALABLE_NESTING:
     
    829840}
    830841#endif
    831 
     842#if SUB_BITSTREAM_PROPERTY_SEI
     843Void SEIReader::xParseSEISubBitstreamProperty(SEISubBitstreamProperty &sei)
     844{
     845  UInt uiCode;
     846  READ_CODE( 4, uiCode, "active_vps_id" );                      sei.m_activeVpsId = uiCode;
     847  READ_UVLC(    uiCode, "num_additional_sub_streams_minus1" );  sei.m_numAdditionalSubStreams = uiCode + 1;
     848
     849  for( Int i = 0; i < sei.m_numAdditionalSubStreams; i++ )
     850  {
     851    READ_CODE(  2, uiCode, "sub_bitstream_mode[i]"           ); sei.m_subBitstreamMode[i] = uiCode;
     852    READ_UVLC(     uiCode, "output_layer_set_idx_to_vps[i]"  ); sei.m_outputLayerSetIdxToVps[i] = uiCode;
     853    READ_CODE(  3, uiCode, "highest_sub_layer_id[i]"         ); sei.m_highestSublayerId[i] = uiCode;
     854    READ_CODE( 16, uiCode, "avg_bit_rate[i]"                 ); sei.m_avgBitRate[i] = uiCode;
     855    READ_CODE( 16, uiCode, "max_bit_rate[i]"                 ); sei.m_maxBitRate[i] = uiCode;
     856  }
     857  xParseByteAlign();
     858}
     859#endif
    832860#if LAYERS_NOT_PRESENT_SEI
    833861Void SEIReader::xParseSEIScalableNesting(SEIScalableNesting& sei, const NalUnitType nalUnitType, UInt payloadSize, TComVPS *vps, TComSPS *sps)
  • branches/SHM-5.0-dev/source/Lib/TLibDecoder/SEIread.h

    r567 r583  
    8383  Void xParseSEIInterLayerConstrainedTileSets (SEIInterLayerConstrainedTileSets &sei, UInt payloadSize);
    8484#endif
     85#if SUB_BITSTREAM_PROPERTY_SEI
     86Void   xParseSEISubBitstreamProperty   (SEISubBitstreamProperty &sei);
     87#endif
    8588#if LAYERS_NOT_PRESENT_SEI
    8689  Void xParseSEILayersNotPresent      (SEILayersNotPresent &sei, UInt payloadSize, TComVPS *vps);
Note: See TracChangeset for help on using the changeset viewer.