2.5.6 IDeckLinkVideoOutputCallback Interface¶
The IDeckLinkVideoOutputCallback
interface is a callback class which is called for each frame as its processing is completed by the DeckLink device.
An object with an IDeckLinkVideoOutputCallback
interface may be registered as a callback with the IDeckLinkOutput
interface.
IDeckLinkVideoOutputCallback
should be used to monitor frame completion status for late or dropped frames. If the application is managing its own frame buffers, they should be disposed or reused inside the ScheduledFrameCompleted callback.
Interface |
Interface ID |
Description |
---|---|---|
IID_IDeckLinkVideoFrame |
An |
|
IID_IDeckLinkOutput |
An |
2.5.6.1 IDeckLinkVideoOutputCallback::ScheduledFrameCompleted method¶
-
HRESULT IDeckLinkVideoOutputCallback::ScheduledFrameCompleted(IDeckLinkVideoFrame *completedFrame, BMDOutputFrameCompletionResult result);¶
The ScheduledFrameCompleted method is called when a scheduled video frame playback is completed. This method is abstract in the base interface and must be implemented by the application developer. The result parameter (required by COM) is ignored by the caller.
The
IDeckLinkVideoOutputCallback
methods are called on a dedicated callback thread. To prevent video frames from being either dropped or delayed, ensure that any application processing on the callback thread takes less time than a frame time. If the application processing time is greater than a frame time, the work should be delegated to another thread.- Parameters:
completedFrame – Completed frame
result – Frame completion result - see
BMDOutputFrameCompletionResult
for details.
2.5.6.2 IDeckLinkVideoOutputCallback::ScheduledPlaybackHasStopped method¶
-
HRESULT IDeckLinkVideoOutputCallback::ScheduledPlaybackHasStopped();¶
The ScheduledPlaybackHasStopped method is called when a scheduled playback has stopped.
This method is abstract in the base interface and must be implemented by the application developer. The result parameter (required by COM) is ignored by the caller.