Changeset 755 in 3DVCSoftware for branches/HTM-9.1-dev0-MediaTek/source/Lib/TLibDecoder/TDecCAVLC.cpp
- Timestamp:
- 27 Dec 2013, 10:54:03 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-9.1-dev0-MediaTek/source/Lib/TLibDecoder/TDecCAVLC.cpp
r753 r755 1049 1049 #endif 1050 1050 1051 #if !CAM_HLS_F0136_F0045_F0082 1051 1052 UInt uiCamParPrecision = 0; 1052 1053 Bool bCamParSlice = false; … … 1068 1069 } 1069 1070 pcSPS->initCamParaSPS( viewIndex, uiCamParPrecision, bCamParSlice, m_aaiTempScale, m_aaiTempOffset ); 1071 #endif 1070 1072 } 1071 1073 #endif … … 1179 1181 #if H_3D 1180 1182 m_pcBitstream->readOutTrailingBits(); 1183 #if CAM_HLS_F0136_F0045_F0082 1184 pcVPS->createCamPars(pcVPS->getNumViews()); 1185 #endif 1181 1186 parseVPSExtension2( pcVPS ); 1182 1187 READ_FLAG( uiCode, "vps_extension3_flag" ); … … 1931 1936 } 1932 1937 } 1938 #if CAM_HLS_F0136_F0045_F0082 1939 UInt uiCamParPrecision = 0; 1940 Bool bCamParSlice = false; 1941 Bool bCamParPresentFlag = false; 1942 1943 READ_UVLC( uiCamParPrecision, "cp_precision" ); 1944 for (UInt viewIndex=0; viewIndex<pcVPS->getNumViews(); viewIndex++) 1945 { 1946 READ_FLAG( uiCode, "cp_present_flag[i]" ); bCamParPresentFlag = ( uiCode == 1); 1947 if ( bCamParPresentFlag ) 1948 { 1949 READ_FLAG( uiCode, "cp_in_slice_segment_header_flag[i]" ); bCamParSlice = ( uiCode == 1); 1950 if ( !bCamParSlice ) 1951 { 1952 for( UInt uiBaseIndex = 0; uiBaseIndex < viewIndex; uiBaseIndex++ ) 1953 { 1954 Int iCode; 1955 READ_SVLC( iCode, "vps_cp_scale" ); m_aaiTempScale [ uiBaseIndex ][ viewIndex ] = iCode; 1956 READ_SVLC( iCode, "vps_cp_off" ); m_aaiTempOffset [ uiBaseIndex ][ viewIndex ] = iCode; 1957 READ_SVLC( iCode, "vps_cp_inv_scale_plus_scale" ); m_aaiTempScale [ viewIndex ][ uiBaseIndex ] = iCode - m_aaiTempScale [ uiBaseIndex ][ viewIndex ]; 1958 READ_SVLC( iCode, "vps_cp_inv_off_plus_off" ); m_aaiTempOffset [ viewIndex ][ uiBaseIndex ] = iCode - m_aaiTempOffset[ uiBaseIndex ][ viewIndex ]; 1959 } 1960 } 1961 pcVPS->initCamParaVPS( viewIndex, bCamParPresentFlag, uiCamParPrecision, bCamParSlice, m_aaiTempScale, m_aaiTempOffset ); 1962 } 1963 } 1964 #endif 1933 1965 READ_FLAG( uiCode, "iv_mv_scaling_flag"); pcVPS->setIvMvScalingFlag( uiCode == 1 ? true : false ); 1934 1966 } … … 2657 2689 } 2658 2690 2691 #if CAM_HLS_F0044 2692 #if CAM_HLS_F0136_F0045_F0082 2693 if( rpcSlice->getVPS()->hasCamParInSliceHeader( rpcSlice->getViewIndex() ) && !rpcSlice->getIsDepth() ) 2694 #else 2695 if( rpcSlice->getSPS()->hasCamParInSliceHeader() ) 2696 #endif 2697 { 2698 UInt uiViewIndex = rpcSlice->getViewIndex(); 2699 for( UInt uiBaseIndex = 0; uiBaseIndex < uiViewIndex; uiBaseIndex++ ) 2700 { 2701 READ_SVLC( iCode, "cp_scale" ); m_aaiTempScale [ uiBaseIndex ][ uiViewIndex ] = iCode; 2702 READ_SVLC( iCode, "cp_off" ); m_aaiTempOffset[ uiBaseIndex ][ uiViewIndex ] = iCode; 2703 READ_SVLC( iCode, "cp_inv_scale_plus_scale" ); m_aaiTempScale [ uiViewIndex ][ uiBaseIndex ] = iCode - m_aaiTempScale [ uiBaseIndex ][ uiViewIndex ]; 2704 READ_SVLC( iCode, "cp_inv_off_plus_off" ); m_aaiTempOffset[ uiViewIndex ][ uiBaseIndex ] = iCode - m_aaiTempOffset[ uiBaseIndex ][ uiViewIndex ]; 2705 } 2706 rpcSlice->setCamparaSlice( m_aaiTempScale, m_aaiTempOffset ); 2707 } 2708 2709 #endif 2710 2659 2711 if(pps->getSliceHeaderExtensionPresentFlag()) 2660 2712 { 2661 2713 READ_UVLC(uiCode,"slice_header_extension_length"); 2662 #if H_3D 2714 #if H_3D && !CAM_HLS_F0044 2715 #if CAM_HLS_F0136_F0045_F0082 2716 if( rpcSlice->getVPS()->hasCamParInSliceHeader( rpcSlice->getViewIndex() ) && !rpcSlice->getIsDepth() ) 2717 #else 2663 2718 if( rpcSlice->getSPS()->hasCamParInSliceHeader() ) 2719 #endif 2664 2720 { 2665 2721 UInt uiViewIndex = rpcSlice->getViewIndex();
Note: See TracChangeset for help on using the changeset viewer.