Ignore:
Timestamp:
27 Feb 2015, 21:05:56 (10 years ago)
Author:
seregin
Message:

implementation of alpha channel SEI (JCTVC-P0123) with macro P0123_ALPHA_CHANNEL_SEI, patch was provided by Matteo Naccari <Matteo.Naccari@…>

File:
1 edited

Legend:

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

    r1029 r1037  
    209209     break;
    210210#endif
     211#if P0123_ALPHA_CHANNEL_SEI
     212   case SEI::ALPHA_CHANNEL_INFO:
     213     xWriteSEIAlphaChannelInfo(*static_cast<const SEIAlphaChannelInfo*>(&sei));
     214     break;
     215#endif
    211216#if Q0096_OVERLAY_SEI
    212217   case SEI::OVERLAY_INFO:
     
    14171422#endif
    14181423
     1424#if P0123_ALPHA_CHANNEL_SEI
     1425Void SEIWriter::xWriteSEIAlphaChannelInfo(const SEIAlphaChannelInfo &sei)
     1426{
     1427  WRITE_FLAG(sei.m_alphaChannelCancelFlag, "alpha_channel_cancel_flag");
     1428  if(!sei.m_alphaChannelCancelFlag)
     1429  {
     1430    WRITE_CODE(sei.m_alphaChannelUseIdc, 3, "alpha_channel_use_idc");
     1431    WRITE_CODE(sei.m_alphaChannelBitDepthMinus8, 3, "alpha_channel_bit_depth_minus8");
     1432    WRITE_CODE(sei.m_alphaTransparentValue, sei.m_alphaChannelBitDepthMinus8 + 9, "alpha_transparent_value");
     1433    WRITE_CODE(sei.m_alphaOpaqueValue, sei.m_alphaChannelBitDepthMinus8 + 9, "alpha_opaque_value");
     1434    WRITE_FLAG(sei.m_alphaChannelIncrFlag, "alpha_channel_incr_flag");
     1435    WRITE_FLAG(sei.m_alphaChannelClipFlag, "alpha_channel_clip_flag");
     1436    if(sei.m_alphaChannelClipFlag)
     1437    {
     1438      WRITE_FLAG(sei.m_alphaChannelClipTypeFlag, "alpha_channel_clip_type_flag");
     1439    }
     1440  }
     1441  xWriteByteAlign();
     1442}
     1443#endif
     1444
    14191445#if Q0096_OVERLAY_SEI
    14201446Void SEIWriter::xWriteSEIOverlayInfo(const SEIOverlayInfo &sei)
Note: See TracChangeset for help on using the changeset viewer.