2.5.50 IDeckLinkWPFDX9ScreenPreviewHelper Interface¶
The IDeckLinkWPFDX9ScreenPreviewHelper
interface may be used with a simple IDeckLinkScreenPreviewCallback
implementation to provide DirectX based preview rendering in WPFapplications inferring the D3DImage surface.
A reference to an IDeckLinkWPFDX9ScreenPreviewHelper
object is obtained from CoCreateInstance()
.
For examples demonstrating how to interface an IDeckLinkWPFDX9ScreenPreviewHelper
object with D3DImage in a WPF application, see the CapturePreviewCSharp and SignalGenCSharp samples in the DeckLink SDK.
Interface |
Interface ID |
Description |
---|---|---|
IID_IDeckLinkVideoFrame |
An |
2.5.50.1 IDeckLinkWPFDX9ScreenPreviewHelper::Initialize method¶
-
HRESULT IDeckLinkWPFDX9ScreenPreviewHelper::Initialize();¶
The Initialize method prepares a DirectX 9 3D device to be used by the DeckLink API’s WPF preview helper.
- Return values:
E_FAIL – Failure
S_OK – Success
2.5.50.2 IDeckLinkWPFDX9ScreenPreviewHelper::Render method¶
-
HRESULT IDeckLinkWPFDX9ScreenPreviewHelper::Render();¶
The Render method should be called whenever the preview frame needs to be repainted. The frames to be displayed should be provided to
IDeckLinkWPFDX9ScreenPreviewHelper::SetFrame()
.- Return values:
E_FAIL – Failure
S_OK – Success
2.5.50.3 IDeckLinkWPFDX9ScreenPreviewHelper::SetSurfaceSize method¶
-
HRESULT IDeckLinkWPFDX9ScreenPreviewHelper::SetSurfaceSize(uint32_t width, uint32_t height);¶
The SetSurfaceSize method is used to set the size of render surface.
- Parameters:
width – Width of surface in pixels.
height – Height of surface in pixels.
- Return values:
E_INVALIDARG – Invalid value for parameters width or height
E_FAIL – Failure
S_OK – Success
2.5.50.4 IDeckLinkWPFDX9ScreenPreviewHelper::SetFrame method¶
-
HRESULT IDeckLinkWPFDX9ScreenPreviewHelper::SetFrame(IDeckLinkVideoFrame *theFrame);¶
The SetFrame method will load a 2D or 3D
IDeckLinkVideoFrame
into a texture. This method is used to set the preview frame to display on the next call toIDeckLinkWPFDX9ScreenPreviewHelper::Render()
.Depending on the rate and timing of calls to SetFrame and Render, some frames may not be displayed or may be displayed multiple times.
- Parameters:
theFrame – The video frame to preview.
- Return values:
E_FAIL – Failure
S_OK – Success
2.5.50.5 IDeckLinkWPFDX9ScreenPreviewHelper::Set3DPreviewFormat method¶
-
HRESULT IDeckLinkWPFDX9ScreenPreviewHelper::Set3DPreviewFormat(BMD3DPreviewFormat previewFormat);¶
The Set3DPreviewFormat method is used to set the 3D preview format.
- Parameters:
previewFormat – The 3D preview format. See
BMD3DPreviewFormat
for more details.- Return values:
S_OK – Success
2.5.50.6 IDeckLinkWPFDX9ScreenPreviewHelper::GetBackBuffer method¶
-
HRESULT IDeckLinkWPFDX9ScreenPreviewHelper::GetBackBuffer(void **backBuffer);¶
The GetBackBuffer method outputs the renderer back buffer than can be copied to front buffer in WPF render thread.
- Parameters:
backBuffer – Pointer to renderer back-buffer.
- Return values:
E_POINTER – The backBuffer parameter is invalid.
E_FAIL – Failure
S_OK – Success