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


Ignore:
Timestamp:
8 Jul 2015, 03:34:13 (10 years ago)
Author:
seregin
Message:

macro cleanup: VPS_VUI_BSP_HRD_PARAMS, R0227_VUI_BSP_HRD_FLAG

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

Legend:

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

    r1134 r1185  
    5555
    5656#if O0164_MULTI_LAYER_HRD
    57 #if VPS_VUI_BSP_HRD_PARAMS
    5857Void SEIWriter::xWriteSEIpayloadData(TComBitIf& bs, const SEI& sei, TComVPS *vps, TComSPS *sps, const SEIScalableNesting* nestingSeiPtr, const SEIBspNesting* bspNestingSeiPtr)
    5958#else
    60 Void SEIWriter::xWriteSEIpayloadData(TComBitIf& bs, const SEI& sei, TComVPS *vps, TComSPS *sps, const SEIScalableNesting& nestingSei, const SEIBspNesting& bspNestingSei)
    61 #endif
    62 #else
    6359Void SEIWriter::xWriteSEIpayloadData(TComBitIf& bs, const SEI& sei, TComSPS *sps)
    6460#endif
    6561{
    66 #if VPS_VUI_BSP_HRD_PARAMS
     62#if SVC_EXTENSION
    6763  SEIScalableNesting nestingSei;
    6864  SEIBspNesting      bspNestingSei;
     
    8783    xWriteSEIDecodedPictureHash(*static_cast<const SEIDecodedPictureHash*>(&sei));
    8884    break;
    89 #if VPS_VUI_BSP_HRD_PARAMS
     85#if SVC_EXTENSION
    9086  case SEI::DECODING_UNIT_INFO:
    9187    xWriteSEIDecodingUnitInfo(*static_cast<const SEIDecodingUnitInfo*>(& sei), sps, nestingSeiPtr, bspNestingSeiPtr, vps);
     
    236232#endif
    237233#if O0164_MULTI_LAYER_HRD
    238 #if VPS_VUI_BSP_HRD_PARAMS
    239234  xWriteSEIpayloadData(bs_count, sei, vps, sps, nestingSei, bspNestingSei);
    240 #else
    241   xWriteSEIpayloadData(bs_count, sei, vps, sps, *nestingSei, *bspNestingSei);
    242 #endif
    243235#else
    244236  xWriteSEIpayloadData(bs_count, sei, sps);
     
    279271
    280272#if O0164_MULTI_LAYER_HRD
    281 #if VPS_VUI_BSP_HRD_PARAMS
    282273  xWriteSEIpayloadData(bs, sei, vps, sps, nestingSei, bspNestingSei);
    283 #else
    284   xWriteSEIpayloadData(bs, sei, vps, sps, *nestingSei, *bspNestingSei);
    285 #endif
    286274#else
    287275  xWriteSEIpayloadData(bs, sei, sps);
     
    352340}
    353341
    354 #if VPS_VUI_BSP_HRD_PARAMS
     342#if SVC_EXTENSION
    355343Void SEIWriter::xWriteSEIDecodingUnitInfo(const SEIDecodingUnitInfo& sei, TComSPS *sps, const SEIScalableNesting* nestingSei, const SEIBspNesting* bspNestingSei, TComVPS *vps)
    356 #else
    357 Void SEIWriter::xWriteSEIDecodingUnitInfo(const SEIDecodingUnitInfo& sei, TComSPS *sps)
    358 #endif
    359 {
    360 #if VPS_VUI_BSP_HRD_PARAMS
     344{
    361345  TComHRD *hrd;
    362346  if( bspNestingSei )   // If DU info SEI contained inside a BSP nesting SEI message
     
    406390    WRITE_CODE(sei.m_picSptDpbOutputDuDelay, hrd->getDpbOutputDelayDuLengthMinus1() + 1, "pic_spt_dpb_output_du_delay");
    407391  }
     392}
    408393#else
     394Void SEIWriter::xWriteSEIDecodingUnitInfo(const SEIDecodingUnitInfo& sei, TComSPS *sps)
     395{
    409396  TComVUI *vui = sps->getVuiParameters();
    410397  WRITE_UVLC(sei.m_decodingUnitIdx, "decoding_unit_idx");
     
    418405    WRITE_CODE(sei.m_picSptDpbOutputDuDelay, vui->getHrdParameters()->getDpbOutputDelayDuLengthMinus1() + 1, "pic_spt_dpb_output_du_delay");
    419406  }
    420 #endif
    421 }
    422 
    423 #if VPS_VUI_BSP_HRD_PARAMS
     407}
     408#endif
     409
     410#if SVC_EXTENSION
    424411Void SEIWriter::xWriteSEIBufferingPeriod(const SEIBufferingPeriod& sei, TComSPS *sps, const SEIScalableNesting* nestingSei, const SEIBspNesting* bspNestingSei, TComVPS *vps)
    425412#else
     
    428415{
    429416  Int i, nalOrVcl;
    430 #if VPS_VUI_BSP_HRD_PARAMS
     417#if SVC_EXTENSION
    431418  TComHRD *hrd;
    432419  if( bspNestingSei )   // If BP SEI contained inside a BSP nesting SEI message
     
    506493#endif
    507494}
    508 #if VPS_VUI_BSP_HRD_PARAMS
     495
     496#if SVC_EXTENSION
    509497Void SEIWriter::xWriteSEIPictureTiming(const SEIPictureTiming& sei,  TComSPS *sps, const SEIScalableNesting* nestingSei, const SEIBspNesting* bspNestingSei, TComVPS *vps)
    510498#else
     
    513501{
    514502  Int i;
    515 #if VPS_VUI_BSP_HRD_PARAMS
     503#if SVC_EXTENSION
    516504  TComHRD *hrd;   
    517505  TComVUI *vui = sps->getVuiParameters();
     
    11651153  assert(vps->getVpsVuiPresentFlag());
    11661154
    1167 #if VPS_VUI_BSP_HRD_PARAMS
     1155#if SVC_EXTENSION
    11681156  Int psIdx = bspNestingSei.m_seiPartitioningSchemeIdx;
    11691157  Int seiOlsIdx = bspNestingSei.m_seiOlsIdx;
  • branches/SHM-dev/source/Lib/TLibEncoder/SEIwrite.h

    r1098 r1185  
    5858protected:
    5959#if O0164_MULTI_LAYER_HRD
    60 #if VPS_VUI_BSP_HRD_PARAMS
    6160  Void xWriteSEIpayloadData(TComBitIf& bs, const SEI& sei, TComVPS *vps, TComSPS *sps, const SEIScalableNesting* nestingSei, const SEIBspNesting* bspNestingSei);
    62 #else
    63   Void xWriteSEIpayloadData(TComBitIf& bs, const SEI& sei, TComVPS *vps, TComSPS *sps, const SEIScalableNesting& nestingSei, const SEIBspNesting& bspNestingSei);
    64 #endif
    6561#else
    6662  Void xWriteSEIpayloadData(TComBitIf& bs, const SEI& sei, TComSPS *sps);
     
    6965  Void xWriteSEIActiveParameterSets(const SEIActiveParameterSets& sei);
    7066  Void xWriteSEIDecodedPictureHash(const SEIDecodedPictureHash& sei);
    71 #if VPS_VUI_BSP_HRD_PARAMS
     67#if SVC_EXTENSION
    7268  Void xWriteSEIDecodingUnitInfo(const SEIDecodingUnitInfo& sei, TComSPS *sps, const SEIScalableNesting* nestingSei, const SEIBspNesting* bspNestingSei, TComVPS *vps);
    7369  Void xWriteSEIBufferingPeriod(const SEIBufferingPeriod& sei, TComSPS *sps, const SEIScalableNesting* nestingSei, const SEIBspNesting* bspNestingSei, TComVPS *vps);
  • branches/SHM-dev/source/Lib/TLibEncoder/TEncCavlc.cpp

    r1183 r1185  
    24962496
    24972497#if O0164_MULTI_LAYER_HRD
    2498     WRITE_FLAG(vps->getVpsVuiBspHrdPresentFlag(), "vps_vui_bsp_hrd_present_flag" );
    2499     if (vps->getVpsVuiBspHrdPresentFlag())
    2500     {
    2501 #if VPS_VUI_BSP_HRD_PARAMS
    2502       codeVpsVuiBspHrdParams(vps);
    2503 #else
    2504       WRITE_UVLC( vps->getVpsNumBspHrdParametersMinus1(), "vps_num_bsp_hrd_parameters_minus1" );
    2505       for( i = 0; i <= vps->getVpsNumBspHrdParametersMinus1(); i++ )
    2506       {
    2507         if( i > 0 )
    2508         {
    2509           WRITE_FLAG( vps->getBspCprmsPresentFlag(i), "bsp_cprms_present_flag[i]" );
    2510         }
    2511         codeHrdParameters(vps->getBspHrd(i), i==0 ? 1 : vps->getBspCprmsPresentFlag(i), vps->getMaxTLayers()-1);
    2512       }
    2513       for( UInt h = 1; h <= vps->getVpsNumLayerSetsMinus1(); h++ )
    2514       {
    2515         WRITE_UVLC( vps->getNumBitstreamPartitions(h), "num_bitstream_partitions[i]");
    2516         for( i = 0; i < vps->getNumBitstreamPartitions(h); i++ )
    2517         {
    2518           for( j = 0; j <= (vps->getMaxLayers()-1); j++ )
    2519           {
    2520             if (vps->getLayerIdIncludedFlag(h, j))
    2521             {
    2522               WRITE_FLAG( vps->getLayerInBspFlag(h, i, j), "layer_in_bsp_flag[h][i][j]" );
    2523             }
    2524           }
    2525         }
    2526         if (vps->getNumBitstreamPartitions(h))
    2527         {
    2528 #if Q0182_MULTI_LAYER_HRD_UPDATE
    2529           WRITE_UVLC(vps->getNumBspSchedCombinations(h) - 1, "num_bsp_sched_combinations_minus1[h]");
    2530 #else
    2531           WRITE_UVLC( vps->getNumBspSchedCombinations(h), "num_bsp_sched_combinations[h]");
    2532 #endif
    2533           for( i = 0; i < vps->getNumBspSchedCombinations(h); i++ )
    2534           {
    2535             for( j = 0; j < vps->getNumBitstreamPartitions(h); j++ )
    2536             {
    2537               WRITE_UVLC( vps->getBspCombHrdIdx(h, i, j), "bsp_comb_hrd_idx[h][i][j]");
    2538               WRITE_UVLC( vps->getBspCombSchedIdx(h, i, j), "bsp_comb_sched_idx[h][i][j]");
    2539             }
    2540           }
    2541         }
    2542       }
    2543 #endif
    2544     }
    2545 #endif
    2546 
    2547     for( i = 1; i < vps->getMaxLayers(); i++ )
    2548     {
    2549       if( vps->getNumRefLayers(vps->getLayerIdInNuh(i)) == 0 )
    2550       {
    2551         WRITE_FLAG(vps->getBaseLayerPSCompatibilityFlag(i), "base_layer_parameter_set_compatibility_flag" );
    2552       }
    2553     }
     2498  WRITE_FLAG(vps->getVpsVuiBspHrdPresentFlag(), "vps_vui_bsp_hrd_present_flag" );
     2499
     2500  if( vps->getVpsVuiBspHrdPresentFlag() )
     2501  {
     2502    codeVpsVuiBspHrdParams(vps);
     2503  }
     2504#endif
     2505
     2506  for( i = 1; i < vps->getMaxLayers(); i++ )
     2507  {
     2508    if( vps->getNumRefLayers(vps->getLayerIdInNuh(i)) == 0 )
     2509    {
     2510      WRITE_FLAG(vps->getBaseLayerPSCompatibilityFlag(i), "base_layer_parameter_set_compatibility_flag" );
     2511    }
     2512  }
    25542513}
    25552514
     
    25612520  WRITE_FLAG( 0, "inter_view_mv_vert_constraint_flag" );
    25622521}
    2563 #endif //SVC_EXTENSION
    25642522
    25652523#if Q0048_CGS_3D_ASYMLUT
     
    27912749}
    27922750#endif
    2793 #if VPS_VUI_BSP_HRD_PARAMS
     2751#endif
     2752
    27942753Void TEncCavlc::codeVpsVuiBspHrdParams(TComVPS * const vps)
    27952754{
    27962755  WRITE_UVLC( vps->getVpsNumAddHrdParams(), "vps_num_add_hrd_params" );
     2756
    27972757  for( Int i = vps->getNumHrdParameters(), j = 0; i < vps->getNumHrdParameters() + vps->getVpsNumAddHrdParams(); i++, j++ ) // j = i - vps->getNumHrdParameters()
    27982758  {
     
    28012761      WRITE_FLAG( vps->getCprmsAddPresentFlag(j), "cprms_add_present_flag[i]" );
    28022762    }
     2763
    28032764    WRITE_UVLC( vps->getNumSubLayerHrdMinus1(j), "num_sub_layer_hrd_minus1[i]" );
     2765
    28042766    codeHrdParameters(vps->getBspHrd(j), i == 0 ? true : vps->getCprmsAddPresentFlag(j), vps->getNumSubLayerHrdMinus1(j));
    28052767  }
     
    28102772    {
    28112773      Int lsIdx = vps->getOutputLayerSetIdx( h );
     2774
    28122775      WRITE_UVLC( vps->getNumSignalledPartitioningSchemes(h), "num_signalled_partitioning_schemes[h]");
    28132776
     
    28152778      {
    28162779        WRITE_UVLC( vps->getNumPartitionsInSchemeMinus1(h, j), "num_partitions_in_scheme_minus1[h][j]" );
     2780
    28172781        for( Int k = 0; k <= vps->getNumPartitionsInSchemeMinus1(h, j); k++ )
    28182782        {
     
    28322796          for( Int j = 0; j <= vps->getNumBspSchedulesMinus1(h, i, t); j++ )
    28332797          {
    2834             for (Int k = 0; k <= vps->getNumPartitionsInSchemeMinus1(h, i); k++)
     2798            for( Int k = 0; k <= vps->getNumPartitionsInSchemeMinus1(h, i); k++ )
    28352799            {
    2836               if (vps->getNumHrdParameters() + vps->getVpsNumAddHrdParams() > 1)
     2800              if( vps->getNumHrdParameters() + vps->getVpsNumAddHrdParams() > 1 )
    28372801              {
    28382802                Int numBits = 1;
     
    28412805                  numBits++;
    28422806                }
     2807
    28432808                WRITE_CODE(vps->getBspHrdIdx(h, i, t, j, k), numBits, "bsp_comb_hrd_idx[h][i][t][j][k]");
    28442809              }
     2810
    28452811              WRITE_UVLC( vps->getBspSchedIdx(h, i, t, j, k), "bsp_comb_sched_idx[h][i][t][j][k]");
    28462812            }
     
    28512817  }
    28522818}
    2853 #endif
    2854 #endif
     2819
     2820#endif //SVC_EXTENSION
    28552821//! \}
  • branches/SHM-dev/source/Lib/TLibEncoder/TEncCavlc.h

    r1029 r1185  
    166166  Void  codeVpsDpbSizeTable    (TComVPS *vps);
    167167#endif
    168 #if VPS_VUI_BSP_HRD_PARAMS
    169168  Void  codeVpsVuiBspHrdParams  (TComVPS * const);
    170 #endif
    171169#if Q0048_CGS_3D_ASYMLUT
    172170#if R0179_ENC_OPT_3DLUT_SIZE
  • branches/SHM-dev/source/Lib/TLibEncoder/TEncGOP.cpp

    r1181 r1185  
    24482448      {
    24492449        Int j;
    2450 #if VPS_VUI_BSP_HRD_PARAMS
    24512450        TComVPS *vps = m_pcEncTop->getVPS();
    2452         for(Int i = 0; i < vps->getNumOutputLayerSets(); i++)
    2453         {
    2454           for(Int k = 0; k < vps->getNumSignalledPartitioningSchemes(i); k++)
     2451
     2452        for( Int i = 0; i < vps->getNumOutputLayerSets(); i++ )
     2453        {
     2454          for( Int k = 0; k < vps->getNumSignalledPartitioningSchemes(i); k++ )
    24552455          {
    2456             for(Int l = 0; l < vps->getNumPartitionsInSchemeMinus1(i, k)+1; l++)
     2456            for( Int l = 0; l < vps->getNumPartitionsInSchemeMinus1(i, k)+1; l++ )
    24572457            {
    2458 #endif
    24592458              nalu = NALUnit(NAL_UNIT_PREFIX_SEI, 0, 1);
    24602459              m_pcEntropyCoder->setEntropyCoder(m_pcCavlcCoder, pcSlice);
    24612460              m_pcEntropyCoder->setBitstream(&nalu.m_Bitstream);
    2462 #if VPS_VUI_BSP_HRD_PARAMS
    24632461              SEIScalableNesting *scalableBspNestingSei = xCreateBspNestingSEI(pcSlice, i, k, l);
    2464 #else
    2465               SEIScalableNesting *scalableBspNestingSei = xCreateBspNestingSEI(pcSlice);
    2466 #endif
    24672462              m_seiWriter.writeSEImessage(nalu.m_Bitstream, *scalableBspNestingSei, m_pcEncTop->getVPS(), pcSlice->getSPS());
    24682463              writeRBSPTrailingBits(nalu.m_Bitstream);
     
    24732468                + m_pictureTimingSEIPresentInAU
    24742469                + m_nestedPictureTimingSEIPresentInAU;  // Insert SEI after APS, BP and PT SEI
     2470
    24752471              AccessUnit::iterator it;
    2476               for(j = 0, it = accessUnit.begin(); j < seiPositionInAu + offsetPosition; j++)
     2472
     2473              for( j = 0, it = accessUnit.begin(); j < seiPositionInAu + offsetPosition; j++ )
    24772474              {
    24782475                it++;
    24792476              }
     2477
    24802478              accessUnit.insert(it, new NALUnitEBSP(nalu));
    2481 #if VPS_VUI_BSP_HRD_PARAMS
    24822479            }
    24832480          }
    24842481        }
    2485 #endif
    24862482      }
    24872483#endif
     
    49584954
    49594955#if O0164_MULTI_LAYER_HRD
    4960 #if VPS_VUI_BSP_HRD_PARAMS
    49614956SEIScalableNesting* TEncGOP::xCreateBspNestingSEI(TComSlice *pcSlice, Int olsIdx, Int partitioningSchemeIdx, Int bspIdx)
    4962 #else
    4963 SEIScalableNesting* TEncGOP::xCreateBspNestingSEI(TComSlice *pcSlice)
    4964 #endif
    49654957{
    49664958  SEIScalableNesting *seiScalableNesting = new SEIScalableNesting();
     
    49754967  seiScalableNesting->m_defaultOpFlag                 = 0;
    49764968  seiScalableNesting->m_nestingNumOpsMinus1           = 0;      //nesting_num_ops_minus1
    4977 #if VPS_VUI_BSP_HRD_PARAMS
    49784969  seiScalableNesting->m_nestingOpIdx[0]               = pcSlice->getVPS()->getOutputLayerSetIdx(olsIdx);
    49794970  seiScalableNesting->m_nestingMaxTemporalIdPlus1[0]  = 6 + 1;
    4980 #else
    4981   seiScalableNesting->m_nestingOpIdx[0]               = 1;
    4982 #endif
    49834971  seiScalableNesting->m_allLayersFlag                 = 0;
    49844972  seiScalableNesting->m_nestingNoOpMaxTemporalIdPlus1 = 6 + 1;  //nesting_no_op_max_temporal_id_plus1
     
    50265014  seiBspNesting->m_nestedSEIs.push_back(seiBufferingPeriod);
    50275015  seiBspNesting->m_nestedSEIs.push_back(seiBspInitialArrivalTime);
    5028 #if VPS_VUI_BSP_HRD_PARAMS
    50295016  seiBspNesting->m_bspIdx = bspIdx;
    50305017  seiBspNesting->m_seiOlsIdx = olsIdx;
    50315018  seiBspNesting->m_seiPartitioningSchemeIdx = partitioningSchemeIdx;
    5032 #endif
    50335019  seiScalableNesting->m_nestedSEIs.push_back(seiBspNesting); // BSP nesting SEI is contained in scalable nesting SEI
    50345020
  • branches/SHM-dev/source/Lib/TLibEncoder/TEncGOP.h

    r1131 r1185  
    282282#endif
    283283#if O0164_MULTI_LAYER_HRD
    284 #if VPS_VUI_BSP_HRD_PARAMS
    285284  SEIScalableNesting* xCreateBspNestingSEI(TComSlice *pcSlice, Int olsIdx, Int partitioningSchemeIdx, Int bspIdx);
    286 #else
    287   SEIScalableNesting* xCreateBspNestingSEI(TComSlice *pcSlice);
    288 #endif
    289285#endif
    290286#if P0123_ALPHA_CHANNEL_SEI
  • branches/SHM-dev/source/Lib/TLibEncoder/TEncTop.cpp

    r1182 r1185  
    240240
    241241  // set the VPS profile information
    242 #if VPS_VUI_BSP_HRD_PARAMS
     242#if SVC_EXTENSION
    243243  m_cVPS.getTimingInfo()->setTimingInfoPresentFlag       ( true );
    244244#else
Note: See TracChangeset for help on using the changeset viewer.