Changeset 525 in SHVCSoftware
- Timestamp:
- 19 Dec 2013, 21:17:10 (11 years ago)
- Location:
- branches/SHM-4.1-dev/source/Lib
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-4.1-dev/source/Lib/TLibCommon/TComSlice.cpp
r520 r525 2123 2123 ::memset(m_ctuBasedOffsetEnabledFlag, 0, sizeof(m_ctuBasedOffsetEnabledFlag)); 2124 2124 ::memset(m_minHorizontalCtuOffsetPlus1, 0, sizeof(m_minHorizontalCtuOffsetPlus1)); 2125 #endif 2126 #if VPS_VUI_VIDEO_SIGNAL 2127 m_vidSigPresentVpsFlag=true; 2128 m_vpsVidSigInfo=1; 2129 ::memset( m_vpsVidSigIdx, 0, sizeof(m_vpsVidSigIdx) ); 2130 m_vpsVidSigIdx[0]=0; 2131 for (Int i=0; i < 16; i++) 2132 { 2133 m_vpsVidFormat[i] = 5; 2134 m_vpsFullRangeFlag[i] = false; 2135 m_vpsColorPrimaries[i] = 2; 2136 m_vpsTransChar[i] = 2; 2137 m_vpsMatCoeff[i] = 2; 2138 } 2125 2139 #endif 2126 2140 #if VPS_VUI_BITRATE_PICRATE -
branches/SHM-4.1-dev/source/Lib/TLibCommon/TComSlice.h
r524 r525 613 613 Int m_minHorizontalCtuOffsetPlus1 [MAX_VPS_LAYER_ID_PLUS1][MAX_VPS_LAYER_ID_PLUS1]; 614 614 #endif 615 #if VPS_VUI_VIDEO_SIGNAL 616 Bool m_vidSigPresentVpsFlag; 617 Int m_vpsVidSigInfo; 618 Int m_vpsVidSigIdx[MAX_VPS_LAYER_ID_PLUS1]; 619 Int m_vpsVidFormat[16]; 620 Bool m_vpsFullRangeFlag[16]; 621 Int m_vpsColorPrimaries[16]; 622 Int m_vpsTransChar[16]; 623 Int m_vpsMatCoeff[16]; 624 #endif 615 625 #if VPS_VUI_BITRATE_PICRATE 616 626 Bool m_bitRatePresentVpsFlag; … … 887 897 Int getMinHorizontalCtuOffsetPlus1 ( Int currLayerId, Int refLayerId ) { return m_minHorizontalCtuOffsetPlus1[currLayerId][refLayerId];} 888 898 Void setMinHorizontalCtuOffsetPlus1 ( Int currLayerId, Int refLayerId, Int val ) { m_minHorizontalCtuOffsetPlus1[currLayerId][refLayerId] = val;} 899 #endif 900 #if VPS_VUI_VIDEO_SIGNAL 901 Bool getVideoSigPresentVpsFlag() { return m_vidSigPresentVpsFlag; } 902 Void setVideoSigPresentVpsFlag(Bool x) { m_vidSigPresentVpsFlag = x; } 903 Int getNumVideoSignalInfo() { return m_vpsVidSigInfo; } 904 Void setNumVideoSignalInfo(Int x) { m_vpsVidSigInfo = x; } 905 Int getVideoSignalInfoIdx(Int idx) { return m_vpsVidSigIdx[idx]; } 906 Void setVideoSignalInfoIdx(Int idx, Int x) { m_vpsVidSigIdx[idx] = x; } 907 Int getVideoVPSFormat(Int idx) { return m_vpsVidFormat[idx]; } 908 Void setVideoVPSFormat(Int idx, Int x) { m_vpsVidFormat[idx] = x; } 909 Bool getVideoFullRangeVpsFlag(Int idx) { return m_vpsFullRangeFlag[idx];} 910 Void setVideoFullRangeVpsFlag(Int idx, Bool x) { m_vpsFullRangeFlag[idx] = x; } 911 Int getColorPrimaries(Int idx) { return m_vpsColorPrimaries[idx]; } 912 Void setColorPrimaries(Int idx, Int x) { m_vpsColorPrimaries[idx] = x; } 913 Int getTransCharacter(Int idx) { return m_vpsTransChar[idx]; } 914 Void setTransCharacter(Int idx, Int x) { m_vpsTransChar[idx] = x; } 915 Int getMaxtrixCoeff(Int idx) { return m_vpsMatCoeff[idx]; } 916 Void setMaxtrixCoeff(Int idx, Int x) { m_vpsMatCoeff[idx] = x; } 889 917 #endif 890 918 #if VPS_VUI_BITRATE_PICRATE -
branches/SHM-4.1-dev/source/Lib/TLibCommon/TypeDef.h
r524 r525 102 102 #define HIGHER_LAYER_IRAP_SKIP_FLAG 1 ///< JCTVC-O0199: Indication that higher layer IRAP picture uses skip blocks only 103 103 #endif 104 #define VPS_VUI_VIDEO_SIGNAL 1 ///< JCTVC-O0118 video signal information 104 105 #endif //VPS_VUI 105 106 -
branches/SHM-4.1-dev/source/Lib/TLibDecoder/TDecCAVLC.cpp
r524 r525 1623 1623 } 1624 1624 #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 1625 1667 } 1626 1668 #endif -
branches/SHM-4.1-dev/source/Lib/TLibEncoder/TEncCavlc.cpp
r524 r525 1281 1281 } 1282 1282 #endif 1283 #if VPS_VUI_VIDEO_SIGNAL 1284 WRITE_FLAG( vps->getVideoSigPresentVpsFlag(), "video_signal_info_idx_present_flag" ); 1285 if (vps->getVideoSigPresentVpsFlag()) 1286 { 1287 WRITE_CODE(vps->getNumVideoSignalInfo()-1, 4, "vps_num_video_signal_info_minus1" ); 1288 } 1289 1290 for(i = 0; i < vps->getNumVideoSignalInfo(); i++) 1291 { 1292 WRITE_CODE(vps->getVideoVPSFormat(i), 3, "video_vps_format" ); 1293 WRITE_FLAG(vps->getVideoFullRangeVpsFlag(i), "video_full_range_vps_flag" ); 1294 WRITE_CODE(vps->getColorPrimaries(i), 8, "color_primaries_vps" ); 1295 WRITE_CODE(vps->getTransCharacter(i), 8, "transfer_characteristics_vps" ); 1296 WRITE_CODE(vps->getMaxtrixCoeff(i), 8, "matrix_coeffs_vps" ); 1297 } 1298 1299 if (vps->getVideoSigPresentVpsFlag() && vps->getNumVideoSignalInfo() > 1 ) 1300 { 1301 for (i=1; i < vps->getMaxLayers(); i++) 1302 WRITE_CODE(vps->getVideoSignalInfoIdx(i), 4, "vps_video_signal_info_idx" ); 1303 } 1304 #endif 1283 1305 } 1284 1306 #endif
Note: See TracChangeset for help on using the changeset viewer.