DirectX interoperability
Overview
// global functions void cv::directx::convertFromD3D10Texture2D( ID3D10Texture2D* pD3D10Texture2D, OutputArray dst ); void cv::directx::convertFromD3D11Texture2D( ID3D11Texture2D* pD3D11Texture2D, OutputArray dst ); void cv::directx::convertFromDirect3DSurface9( IDirect3DSurface9* pDirect3DSurface9, OutputArray dst, void* surfaceSharedHandle = NULL ); void cv::directx::convertToD3D10Texture2D( InputArray src, ID3D10Texture2D* pD3D10Texture2D ); void cv::directx::convertToD3D11Texture2D( InputArray src, ID3D11Texture2D* pD3D11Texture2D ); void cv::directx::convertToDirect3DSurface9( InputArray src, IDirect3DSurface9* pDirect3DSurface9, void* surfaceSharedHandle = NULL ); int cv::directx::getTypeFromD3DFORMAT(const int iD3DFORMAT); int cv::directx::getTypeFromDXGI_FORMAT(const int iDXGI_FORMAT); Context& cv::directx::ocl::initializeContextFromD3D10Device(ID3D10Device* pD3D10Device); Context& cv::directx::ocl::initializeContextFromD3D11Device(ID3D11Device* pD3D11Device); Context& cv::directx::ocl::initializeContextFromDirect3DDevice9(IDirect3DDevice9* pDirect3DDevice9); Context& cv::directx::ocl::initializeContextFromDirect3DDevice9Ex(IDirect3DDevice9Ex* pDirect3DDevice9Ex);
Detailed Documentation
Global Functions
void cv::directx::convertFromD3D10Texture2D( ID3D10Texture2D* pD3D10Texture2D, OutputArray dst )
Converts ID3D10Texture2D to OutputArray.
Note: function does memory copy from pD3D10Texture2D to dst
Parameters:
pD3D10Texture2D |
|
dst |
|
void cv::directx::convertFromD3D11Texture2D( ID3D11Texture2D* pD3D11Texture2D, OutputArray dst )
Converts ID3D11Texture2D to OutputArray. If input texture format is DXGI_FORMAT_NV12 then data will be upsampled and color-converted to BGR format.
Note: Destination matrix will be re-allocated if it has not enough memory to match texture size. function does memory copy from pD3D11Texture2D to dst
Parameters:
pD3D11Texture2D |
|
dst |
|
void cv::directx::convertFromDirect3DSurface9( IDirect3DSurface9* pDirect3DSurface9, OutputArray dst, void* surfaceSharedHandle = NULL )
Converts IDirect3DSurface9 to OutputArray.
Note: function does memory copy from pDirect3DSurface9 to dst
Parameters:
pDirect3DSurface9 |
|
dst |
|
surfaceSharedHandle |
|
void cv::directx::convertToD3D10Texture2D( InputArray src, ID3D10Texture2D* pD3D10Texture2D )
Converts InputArray to ID3D10Texture2D.
Note: function does memory copy from src to pD3D10Texture2D
Parameters:
src |
|
pD3D10Texture2D |
|
void cv::directx::convertToD3D11Texture2D( InputArray src, ID3D11Texture2D* pD3D11Texture2D )
Converts InputArray to ID3D11Texture2D. If destination texture format is DXGI_FORMAT_NV12 then input UMat expected to be in BGR format and data will be downsampled and color-converted to NV12.
Note: Destination texture must be allocated by application. Function does memory copy from src to pD3D11Texture2D
Parameters:
src |
|
pD3D11Texture2D |
|
void cv::directx::convertToDirect3DSurface9( InputArray src, IDirect3DSurface9* pDirect3DSurface9, void* surfaceSharedHandle = NULL )
Converts InputArray to IDirect3DSurface9.
Note: function does memory copy from src to pDirect3DSurface9
Parameters:
src |
|
pDirect3DSurface9 |
|
surfaceSharedHandle |
|
int cv::directx::getTypeFromD3DFORMAT(const int iD3DFORMAT)
Get OpenCV type from DirectX type.
Parameters:
iD3DFORMAT |
|
Returns:
OpenCV type or -1 if there is no equivalent
int cv::directx::getTypeFromDXGI_FORMAT(const int iDXGI_FORMAT)
Get OpenCV type from DirectX type.
Parameters:
iDXGI_FORMAT |
|
Returns:
OpenCV type or -1 if there is no equivalent
Context& cv::directx::ocl::initializeContextFromD3D10Device(ID3D10Device* pD3D10Device)
Creates OpenCL context from D3D10 device.
Parameters:
pD3D10Device |
|
Returns:
Returns reference to OpenCL Context
Context& cv::directx::ocl::initializeContextFromD3D11Device(ID3D11Device* pD3D11Device)
Creates OpenCL context from D3D11 device.
Parameters:
pD3D11Device |
|
Returns:
Returns reference to OpenCL Context
Context& cv::directx::ocl::initializeContextFromDirect3DDevice9(IDirect3DDevice9* pDirect3DDevice9)
Creates OpenCL context from Direct3DDevice9 device.
Parameters:
pDirect3DDevice9 |
|
Returns:
Returns reference to OpenCL Context
Context& cv::directx::ocl::initializeContextFromDirect3DDevice9Ex(IDirect3DDevice9Ex* pDirect3DDevice9Ex)
Creates OpenCL context from Direct3DDevice9Ex device.
Parameters:
pDirect3DDevice9Ex |
|
Returns:
Returns reference to OpenCL Context