DisplayVideoFrameSync vs ScheduleVideoFrame

Ask software engineering and SDK questions for developers working on Mac OS X, Windows or Linux.
  • Author
  • Message
Offline

Jonas Geduldig

  • Posts: 12
  • Joined: Tue Jun 17, 2014 7:04 pm

DisplayVideoFrameSync vs ScheduleVideoFrame

PostWed May 03, 2017 3:30 pm

What is the difference between these two methods? I would like to write frames to the video output at the frame rate of the card. Which method should I use?
Offline

Waqqas Sharif

Blackmagic Design

  • Posts: 21
  • Joined: Tue Oct 04, 2016 1:47 am

Re: DisplayVideoFrameSync vs ScheduleVideoFrame

PostThu May 04, 2017 1:19 am

Hello Jonas,

IDeckLinkOutput::DisplayVideoFrameSync and IDeckLinkOutput::ScheduleVideoFrame will both cause video frames to be output at the next clock interval for the specified video mode.

The primary difference is that DisplayVideoFrameSync will write/overwrite the next frame for video output, while scheduled playback (ScheduleVideoFrame / IDeckLinkVideoOutputCallback::ScheduledFrameCompleted) will push the next video frame onto a queue to be output (making it possible to insulate the video output from application latency by increasing the preroll).

If the application were using scheduled playback, the frame result in ScheduledFrameCompleted provides a means to identify if a frame was displayed late or dropped, and to correct for this situation.

If it fits the structure of your application, scheduled playback is the preferred playback mechanism, if not, it is perfectly reasonable to use DisplayVideoFrameSync.

Importantly, the minimum latency with both methods is 1 frame.

Hope this helps.

Regards
Waqqas

Return to Software Developers

Who is online

Users browsing this forum: No registered users and 3 guests