Changeset 649 in SHVCSoftware for trunk/source/App


Ignore:
Timestamp:
26 Mar 2014, 02:07:30 (11 years ago)
Author:
seregin
Message:

merge with SHM-5.1-dev branch

Location:
trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk

  • trunk/source

  • trunk/source/App/TAppEncoder/TAppEncCfg.cpp

    r644 r649  
    17611761  m_numLayers = m_numLayers > MAX_LAYERS ? MAX_LAYERS : m_numLayers;
    17621762
     1763 
     1764  // it can be updated after AVC BL support will be added to the WD
     1765  if( m_avcBaseLayerFlag )
     1766  {
     1767    m_crossLayerIrapAlignFlag = false;
     1768    m_crossLayerPictureTypeAlignFlag = false;
     1769    m_crossLayerAlignedIdrOnlyFlag = false;
     1770  }
     1771
    17631772  // verify layer configuration parameters
    17641773  for(UInt layer=0; layer<m_numLayers; layer++)
  • trunk/source/App/TAppEncoder/TAppEncTop.cpp

    r644 r649  
    11511151    vps->setProfileLevelTierIdx(i, i);
    11521152    vps->setOutputLayerSetIdx(i, i);
    1153   }
    1154 
    1155   for(Int lsIdx = 1; lsIdx < vps->getNumLayerSets(); lsIdx++)
    1156   {
    1157     // Include the highest layer as output layer
    1158     for(UInt layer=0; layer <= vps->getMaxLayerId() ; layer++)
    1159     {
    1160       if(vps->getLayerIdIncludedFlag(lsIdx, layer))
    1161       {
    1162         vps->setOutputLayerFlag(lsIdx, layer, layer == (vps->getMaxLayerId()));
    1163       }
    1164     }
    1165   }
     1153  } 
    11661154#endif
    11671155 #if VPS_DPB_SIZE_TABLE
     
    11751163  vps->deriveNumberOfSubDpbs();
    11761164#endif
     1165
     1166  // derive OutputLayerFlag[i][j]
     1167  if( vps->getDefaultTargetOutputLayerIdc() == 1 )
     1168  {
     1169    // default_target_output_layer_idc equal to 1 specifies that only the layer with the highest value of nuh_layer_id such that nuh_layer_id equal to nuhLayerIdA and
     1170    // AuxId[ nuhLayerIdA ] equal to 0 in each of the output layer sets with index in the range of 1 to vps_num_layer_sets_minus1, inclusive, is an output layer of its output layer set.
     1171
     1172    // Include the highest layer as output layer for each layer set
     1173    for(Int lsIdx = 1; lsIdx < vps->getNumLayerSets(); lsIdx++)
     1174    {
     1175      for( UInt layer = 0; layer < vps->getNumLayersInIdList(lsIdx); layer++ )
     1176      {
     1177        if( vps->getLayerIdIncludedFlag(lsIdx, layer) )     
     1178        {       
     1179          vps->setOutputLayerFlag( lsIdx, layer, layer == vps->getNumLayersInIdList(lsIdx) - 1 );
     1180        }
     1181      }
     1182    }
     1183  }
     1184  else
     1185  {
     1186    // cases when default_target_output_layer_idc is not equal to 1
     1187    assert(!"default_target_output_layer_idc not equal to 1 is not yet supported");
     1188  }
     1189
    11771190  // Initialize dpb_size_table() for all ouput layer sets in the VPS extension
    11781191  for(i = 1; i < vps->getNumOutputLayerSets(); i++)
     
    13221335        }
    13231336      }
    1324     }
    1325 
    1326     if( vps->getAvcBaseLayerFlag() )
    1327     {
    1328       vps->setCrossLayerIrapAlignFlag(false);
    13291337    }
    13301338#endif
Note: See TracChangeset for help on using the changeset viewer.