Changeset 525 in SHVCSoftware for branches/SHM-4.1-dev/source/Lib/TLibDecoder


Ignore:
Timestamp:
19 Dec 2013, 21:17:10 (11 years ago)
Author:
sharp
Message:
  1. Deshpande <sdeshpande@…>

JCTVC-O0118 video signal information signaling

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/SHM-4.1-dev/source/Lib/TLibDecoder/TDecCAVLC.cpp

    r524 r525  
    16231623  }
    16241624#endif
     1625#if VPS_VUI_VIDEO_SIGNAL
     1626    READ_FLAG( uiCode, "video_signal_info_idx_present_flag" ); vps->setVideoSigPresentVpsFlag( uiCode == 1 );
     1627    if (vps->getVideoSigPresentVpsFlag())
     1628    {
     1629        READ_CODE(4, uiCode, "vps_num_video_signal_info_minus1" ); vps->setNumVideoSignalInfo(uiCode + 1);
     1630    }
     1631    else
     1632    {
     1633        vps->setNumVideoSignalInfo(vps->getMaxLayers());
     1634    }
     1635   
     1636   
     1637    for(i = 0; i < vps->getNumVideoSignalInfo(); i++)
     1638    {
     1639        READ_CODE(3, uiCode, "video_vps_format" ); vps->setVideoVPSFormat(i,uiCode);
     1640        READ_FLAG(uiCode, "video_full_range_vps_flag" ); vps->setVideoFullRangeVpsFlag(i,uiCode);
     1641        READ_CODE(8, uiCode, "color_primaries_vps" ); vps->setColorPrimaries(i,uiCode);
     1642        READ_CODE(8, uiCode, "transfer_characteristics_vps" ); vps->setTransCharacter(i,uiCode);
     1643        READ_CODE(8, uiCode, "matrix_coeffs_vps" );vps->setMaxtrixCoeff(i,uiCode);
     1644    }
     1645    if(!vps->getVideoSigPresentVpsFlag())
     1646    {
     1647        for (i=0; i < vps->getMaxLayers(); i++)
     1648        {
     1649            vps->setVideoSignalInfoIdx(i,i);
     1650        }
     1651    }
     1652    else {
     1653        vps->setVideoSignalInfoIdx(0,0);
     1654        if (vps->getNumVideoSignalInfo() > 1 )
     1655        {
     1656            for (i=1; i < vps->getMaxLayers(); i++)
     1657                READ_CODE(4, uiCode, "vps_video_signal_info_idx" ); vps->setVideoSignalInfoIdx(i, uiCode);
     1658        }
     1659        else {
     1660          for (i=1; i < vps->getMaxLayers(); i++)
     1661          {
     1662            vps->setVideoSignalInfoIdx(i,0);
     1663          }
     1664        }
     1665    }
     1666#endif
    16251667}
    16261668#endif
Note: See TracChangeset for help on using the changeset viewer.