- Posts: 10
- Joined: Sat Jan 04, 2014 11:27 pm
- Location: Amsterdam
- Real Name: Erwin Driessens
Hi Erwin,
Thanks for raising this, the fix for IDeckLinkInput::GetAvailableVideoFrameCount() will be included in the next Desktop Video release.
There are two alternative mechanisms:
1) On IDeckLinkInputCallback::VideoInputFrameArrived callback, make a call to IDeckLinkVideoInputFrame:: GetHardwareReferenceTimestamp[1], keep track of the frameTime to ensure that the processing is keeping up with the expected stream time.
2) You may want to consider using IDeckLinkScreenPreviewCallback[2], instead of VideoInputFrameArrived callback, the latter callback expects the processing to be within the frame interval. IDeckLinkScreenPreviewCallback is primarily targeted for OpenGL/DirectX rendering, as render times can be greater than the frame interval time. As such there is no requirement for IDeckLinkScreenPreviewCallback processing time and no impact of dropped frames.
Regards
Cameron
Refs
[1] 2.5.11.2 IDeckLinkVideoInputFrame:: GetHardwareReferenceTimestamp method
[2] 2.5.22.1 IDeckLinkScreenPreviewCallback::DrawFrame method