2.5.54 IDeckLinkVideoBufferAllocatorProvider Interface¶
The IDeckLinkVideoBufferAllocatorProvider
interface is a callback class to provide custom video frame buffer allocations for capture. An object that implements the IDeckLinkVideoBufferAllocatorProvider
interface is passed to IDeckLinkInput::EnableVideoInputWithAllocatorProvider()
when enabling input.
Interface |
Interface ID |
Description |
---|---|---|
IID_IDeckLinkVideoBufferAllocator |
|
|
IID_IDeckLinkInput |
An |
2.5.54.1 IDeckLinkVideoBufferAllocatorProvider::GetVideoBufferAllocator method¶
-
HRESULT IDeckLinkVideoBufferAllocatorProvider::GetVideoBufferAllocator(uint32_t bufferSize, uint32_t width, uint32_t height, uint32_t rowBytes, BMDPixelFormat pixelFormat, IDeckLinkVideoBufferAllocator **allocator);¶
The GetVideoBufferAllocator method is called by
IDeckLinkInput::EnableVideoInputWithAllocatorProvider()
to obtain and retain allocators for video buffers that are alike. This method is abstract in the base interface and must be implemented by the application developer if usingIDeckLinkInput::EnableVideoInputWithAllocatorProvider()
.- Parameters:
bufferSize – Size of buffer in bytes. This may be larger than rowBytes x height.
width – Frame width in pixels
height – Frame height in pixels
rowBytes – Bytes per row
pixelFormat – Pixel format used by the allocator.
allocator – An allocator that can provide buffers that match the preceding parameters. This object must be released by the caller when no longer required.
- Return values:
E_OUTOFMEMORY – There is insufficient memory to allocate a buffer of the requested size.
S_OK – Success