Changeset 884 in SHVCSoftware for branches/SHM-dev/source/Lib/TLibEncoder


Ignore:
Timestamp:
11 Sep 2014, 12:48:48 (11 years ago)
Author:
nokia
Message:

implementation of jct-vc R0247
(1) Only the base layer creates the Active Parameter Sets SEI message.
(2) Active Parameter Sets SEI message can active more than 1 sps.

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

Legend:

Unmodified
Added
Removed
  • branches/SHM-dev/source/Lib/TLibEncoder/SEIwrite.cpp

    r871 r884  
    394394    WRITE_UVLC(sei.activeSeqParameterSetId[i], "active_seq_parameter_set_id");
    395395  }
     396#if R0247_SEI_ACTIVE
     397  for (Int i = 1; i < sei.activeSeqParameterSetId.size(); i++)
     398  {
     399    WRITE_UVLC(sei.layerSpsIdx[i], "layer_sps_idx");
     400  }
     401#endif
    396402  xWriteByteAlign();
    397403}
  • branches/SHM-dev/source/Lib/TLibEncoder/TEncGOP.cpp

    r880 r884  
    202202  seiActiveParameterSets->m_selfContainedCvsFlag = false;
    203203  seiActiveParameterSets->m_noParameterSetUpdateFlag = false;
     204#if !R0247_SEI_ACTIVE
    204205  seiActiveParameterSets->numSpsIdsMinus1 = 0;
    205206  seiActiveParameterSets->activeSeqParameterSetId.resize(seiActiveParameterSets->numSpsIdsMinus1 + 1);
    206207  seiActiveParameterSets->activeSeqParameterSetId[0] = sps->getSPSId();
     208#else
     209  seiActiveParameterSets->numSpsIdsMinus1 = m_pcCfg->getNumLayer()-1;
     210  seiActiveParameterSets->activeSeqParameterSetId.resize(seiActiveParameterSets->numSpsIdsMinus1 + 1);
     211  seiActiveParameterSets->layerSpsIdx.resize(seiActiveParameterSets->numSpsIdsMinus1+ 1); 
     212  for (Int c=0; c <= seiActiveParameterSets->numSpsIdsMinus1; c++)
     213  {
     214     seiActiveParameterSets->activeSeqParameterSetId[c] = c;
     215  }
     216  for (Int c=1; c <= seiActiveParameterSets->numSpsIdsMinus1; c++)
     217  {
     218     seiActiveParameterSets->layerSpsIdx[c] = c;
     219  }
     220#endif
    207221  return seiActiveParameterSets;
    208222}
     
    429443  OutputNALUnit nalu(NAL_UNIT_PREFIX_SEI);
    430444
    431   if(m_pcCfg->getActiveParameterSetsSEIEnabled())
     445  if(m_pcCfg->getActiveParameterSetsSEIEnabled()
     446#if R0247_SEI_ACTIVE
     447    && m_layerId == 0
     448#endif
     449    )
    432450  {
    433451    SEIActiveParameterSets *sei = xCreateSEIActiveParameterSets (sps);
Note: See TracChangeset for help on using the changeset viewer.