Ignore:
Timestamp:
7 Oct 2014, 12:16:13 (10 years ago)
Author:
tech
Message:

Added

  • Fix PTL
  • Support auxiliary pictures.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-12.0-dev1/source/Lib/TLibCommon/TComSlice.h

    r1055 r1060  
    12161216  Void    setProfileTierLevelIdx( Int i, Int j, Int val )                  { m_profileTierLevelIdx[ i ][ j ] = val; }
    12171217  Int     getProfileTierLevelIdx( Int i, Int j )                           { return m_profileTierLevelIdx[ i ][ j ]; }
     1218#if H_MV_HLS10_PTL
     1219  Int     inferProfileTierLevelIdx( Int i, Int j )
     1220  {
     1221    Bool inferZero        = ( i == 0 && j == 0 &&  getVpsBaseLayerInternalFlag() );
     1222    Bool inferGreaterZero = getNecessaryLayerFlag(i,j) && ( getVpsNumProfileTierLevelMinus1() == 0 );
     1223    assert( inferZero || inferGreaterZero );
     1224
     1225    Bool ptlIdx = 0; // inference for greaterZero
     1226    if ( inferZero )
     1227    {
     1228      ptlIdx = getMaxLayersMinus1() > 0 ? 1 : 0;
     1229      if ( inferGreaterZero )
     1230      {
     1231        assert( ptlIdx == 0 ); 
     1232        // This should never happen since :
     1233        // When vps_max_layers_minus1 is greater than 0, the value of vps_num_profile_tier_level_minus1 shall be greater than or equal to 1.
     1234      }
     1235    }
     1236    return ptlIdx;     
     1237  }
     1238#endif
    12181239#else
    12191240  Void    setProfileLevelTierIdx( Int outLayerSetIdx, Int val )            { m_profileLevelTierIdx[ outLayerSetIdx ] = val; }
     
    12821303
    12831304  Int     getViewIndex    ( Int layerIdInNuh )                             { return getScalabilityId( getLayerIdInVps(layerIdInNuh), VIEW_ORDER_INDEX  ); }   
     1305#if H_MV_HLS10_AUX
     1306  Int     getAuxId        ( Int layerIdInNuh )                             { return getScalabilityId( getLayerIdInVps(layerIdInNuh), AUX_ID  ); }   
     1307  Int     getDependencyId ( Int layerIdInNuh )                             { return getScalabilityId( getLayerIdInVps(layerIdInNuh), DEPENDENCY_ID  ); }   
     1308#endif
    12841309  Int     getNumViews();
    12851310
     
    14601485    vector<Int> fullArray;
    14611486    vector<Int> range;
     1487
     1488#if H_3D
     1489    vector<Int> depthId;
     1490#endif
     1491
     1492#if H_MV_HLS10_AUX
     1493    vector<Int> viewOrderIndex;
     1494    vector<Int> auxId;
     1495    vector<Int> dependencyId;
     1496    vector<Int> viewId;
     1497#endif
    14621498    for (Int i = 0; i <= getMaxLayersMinus1(); i++ )
    14631499    {
    14641500      fullArray.push_back( getMaxLayersMinus1() + 1 );
    14651501      range.push_back( i );
     1502#if H_MV_HLS10_AUX     
     1503      viewOrderIndex.push_back( getViewIndex   ( i ) );
     1504      dependencyId  .push_back( getDependencyId( i ) );
     1505      auxId         .push_back( getAuxId       ( i ) );     
     1506      viewId        .push_back( getViewId      ( getLayerIdInNuh( i ) ) );
     1507#if H_3D 
     1508      depthId.push_back( getDepthId( i ) );
     1509#endif
     1510#endif
    14661511    }
    14671512    std::cout << std::right << std::setw(60) << std::setfill('-') << " " << std::setfill(' ') << std::endl << "Layer Dependencies" << std::endl;
     
    14751520
    14761521  };
     1522
     1523#if H_MV_HLS10_AUX
     1524  Void    printScalabilityId()
     1525  {   
     1526    vector<Int> layerIdxInVps;
     1527
     1528#if H_3D
     1529    vector<Int> depthId;
     1530#endif
     1531
     1532    vector<Int> viewOrderIndex;
     1533    vector<Int> auxId;
     1534    vector<Int> dependencyId;
     1535    vector<Int> viewId;
     1536
     1537    for (Int i = 0; i <= getMaxLayersMinus1(); i++ )
     1538    {
     1539      Int layerIdInNuh = getLayerIdInNuh( i );
     1540      layerIdxInVps  .push_back( i );
     1541      viewOrderIndex.push_back( getViewIndex   ( layerIdInNuh ) );
     1542      dependencyId  .push_back( getDependencyId( layerIdInNuh ) );
     1543      auxId         .push_back( getAuxId       ( layerIdInNuh ) );     
     1544      viewId        .push_back( getViewId      ( layerIdInNuh ) );
     1545#if H_3D 
     1546      depthId       .push_back( getDepthId     ( layerIdInNuh ) );
     1547#endif
     1548    }
     1549
     1550    std::cout << std::right << std::setw(60) << std::setfill('-') << " " << std::setfill(' ') << std::endl << "Scalability Ids" << std::endl;
     1551    xPrintArray( "layerIdxInVps"  , getMaxLayersMinus1()+1, layerIdxInVps,          false );
     1552    xPrintArray( "layer_id_in_nuh", getMaxLayersMinus1()+1, m_layerIdInNuh, false );     
     1553   
     1554    xPrintArray( "ViewOrderIndex", getMaxLayersMinus1()+1, viewOrderIndex, false );     
     1555    xPrintArray( "DependencyId"  , getMaxLayersMinus1()+1, dependencyId  , false );     
     1556    xPrintArray( "AuxId"         , getMaxLayersMinus1()+1, auxId         , false );     
     1557    xPrintArray( "ViewId"        , getMaxLayersMinus1()+1, viewId        , false );     
     1558
     1559    std::cout << std::endl;
     1560  };
     1561#endif
     1562
     1563
    14771564
    14781565  Void    printLayerSets()
Note: See TracChangeset for help on using the changeset viewer.