Changeset 1172 in 3DVCSoftware for branches/HTM-13.1-dev0/source/App


Ignore:
Timestamp:
5 Apr 2015, 22:58:19 (10 years ago)
Author:
tech
Message:

K0050: Camera paramters.

Location:
branches/HTM-13.1-dev0/source/App/TAppEncoder
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-13.1-dev0/source/App/TAppEncoder/TAppEncCfg.cpp

    r1170 r1172  
    17131713  xConfirmPara( m_pchBaseViewCameraNumbers  == 0                ,   "BaseViewCameraNumbers must be given" );
    17141714#if BUG_FIX_TK65
     1715#if HHI_CAM_PARA_K0052
     1716  xConfirmPara( m_iNumberOfViews != m_cCameraData.getBaseViewNumbers().size() ,   "Number of Views in BaseViewCameraNumbers must be equal to NumberOfViews" );
     1717#else
    17151718  xConfirmPara( ( ((UInt) m_numberOfLayers >> 1 ) != m_cCameraData.getBaseViewNumbers().size() ) && ( m_numberOfLayers != m_cCameraData.getBaseViewNumbers().size() ),   "Number of Views in BaseViewCameraNumbers must be equal to NumberOfViews" );
     1719#endif
    17161720#else
    17171721  xConfirmPara( ((UInt) m_numberOfLayers >> 1 ) != m_cCameraData.getBaseViewNumbers().size(),   "Number of Views in BaseViewCameraNumbers must be equal to NumberOfViews" );
  • branches/HTM-13.1-dev0/source/App/TAppEncoder/TAppEncTop.cpp

    r1170 r1172  
    140140  xSetVPSVUI               ( vps );
    141141#if H_3D
     142#if HHI_CAM_PARA_K0052
     143  xSetCamPara              ( vps );
     144#endif
     145#endif
     146#if H_3D
    142147  m_ivPicLists.setVPS      ( &vps );
    143148  xDeriveDltArray          ( vps, dlt );
     
    224229    //====== Camera Parameters =========
    225230    m_cTEncTop.setCameraParameters             ( &m_cCameraData );     
     231#if !HHI_CAM_PARA_K0052
    226232    m_cTEncTop.setCamParPrecision              ( m_cCameraData.getCamParsCodedPrecision  () );
    227233    m_cTEncTop.setCamParInSliceHeader          ( m_cCameraData.getVaryingCameraParameters() );
     234
    228235    m_cTEncTop.setCodedScale                   ( m_cCameraData.getCodedScale             () );
    229236    m_cTEncTop.setCodedOffset                  ( m_cCameraData.getCodedOffset            () );
     237#endif
    230238#if H_3D_VSO
    231239    //====== VSO =========
     
    791799{
    792800#if H_3D
     801#if !HHI_CAM_PARA_K0052
    793802  for ( Int viewIndex = 0; viewIndex < m_vps->getNumViews(); viewIndex++ )
    794803  {
     
    796805      m_cCameraData.getVaryingCameraParameters(), m_cCameraData.getCodedScale(), m_cCameraData.getCodedOffset() );
    797806  }
     807#endif
    798808#endif
    799809
     
    22282238  }
    22292239}
     2240
     2241#if HHI_CAM_PARA_K0052
     2242#if H_3D
     2243Void TAppEncTop::xSetCamPara                ( TComVPS& vps )
     2244{
     2245  vps.setCpPrecision( m_cCameraData.getCamParsCodedPrecision());
     2246
     2247  for ( Int n = 1; n < vps.getNumViews(); n++ )
     2248  { 
     2249    Int i      = vps.getViewOIdxList( n );
     2250    Int iInVps = vps.getVoiInVps    ( i );
     2251    vps.setNumCp( iInVps,  n);   
     2252
     2253    if ( vps.getNumCp( iInVps ) > 0 )
     2254    {
     2255      vps.setCpInSliceSegmentHeaderFlag( iInVps, m_cCameraData.getVaryingCameraParameters() );
     2256
     2257      for( Int m = 0; m < vps.getNumCp( iInVps ); m++ )
     2258      {
     2259        vps.setCpRefVoi( iInVps, m, vps.getViewOIdxList( m ) );
     2260        if( !vps.getCpInSliceSegmentHeaderFlag( iInVps ) )
     2261        {
     2262          Int j = vps.getCpRefVoi( iInVps, m );
     2263          Int jInVps = vps.getVoiInVps( j );         
     2264
     2265          vps.setVpsCpScale   ( iInVps, jInVps, m_cCameraData.getCodedScale() [ jInVps ][ iInVps ] ) ;
     2266          vps.setVpsCpInvScale( iInVps, jInVps, m_cCameraData.getCodedScale() [ iInVps ][ jInVps ] ) ;
     2267          vps.setVpsCpOff     ( iInVps, jInVps, m_cCameraData.getCodedOffset()[ jInVps ][ iInVps ] ) ;
     2268          vps.setVpsCpInvOff  ( iInVps, jInVps, m_cCameraData.getCodedOffset()[ iInVps ][ jInVps ] ) ;
     2269        }
     2270      }
     2271    }
     2272  }
     2273  vps.deriveCpPresentFlag();
     2274}
     2275#endif
     2276#endif
     2277
     2278
    22302279Bool TAppEncTop::xLayerIdInTargetEncLayerIdList(Int nuhLayerId)
    22312280{
  • branches/HTM-13.1-dev0/source/App/TAppEncoder/TAppEncTop.h

    r1133 r1172  
    142142  Void xSetDpbSize                ( TComVPS& vps );
    143143  Void xSetVPSVUI                 ( TComVPS& vps );
     144#if HHI_CAM_PARA_K0052
     145#if H_3D
     146  Void xSetCamPara                ( TComVPS& vps );
     147#endif
     148#endif
    144149  GOPEntry* xGetGopEntry( Int layerIdInVps, Int poc );
    145150  Int  xGetMax( std::vector<Int>& vec);
Note: See TracChangeset for help on using the changeset viewer.