Synchronised Capture

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

ShilpiR_beesys

  • Posts: 17
  • Joined: Mon Apr 22, 2019 7:15 am
  • Real Name: Shilpi Rustagi

Synchronised Capture

PostMon Sep 20, 2021 10:27 am

Hi ,

SDK Version : 12.1
Card : DecklinkQuad

I am capturing 6 inputs all together , Currently the issue I am facing is that all the channels start at a different frame time , the frame time that I get in the VideoFrame's GetFrameTime function is different for all the channels even in the first FrameArrived callback , I tried to use the captureGroup but in this case the capture doesn't start at all . Tried to use the SynchronisedCapture.exe as well but it stucks at "Waiting for Signal Lock..." . Are there some settings that has to be done ?
DecklinkQuad.png
DecklinkQuad.png (14.09 KiB) Viewed 2400 times
Offline

Cameron Nichols

Blackmagic Design

  • Posts: 442
  • Joined: Mon Sep 04, 2017 4:05 am

Re: Synchronised Capture

PostThu Sep 23, 2021 6:13 am

Hi Shilpi,

Unmodified, the SynchronizedCapture SDK example will perform the following:
  • Iterate the first 2 devices (typically DeckLink Quad (1) and DeckLink Quad (2)) - the device count is defined by constant kDeviceCount
  • Add both devices to the same Synchronised Capture group
  • Enable inputs on both devices with video mode 1080p25 - defined by kDisplayMode
  • Wait until the detected inputs on both devices are 1080p25
  • Synchronously start streams on both inputs
The example will wait forever until a valid input is detected on the 2 inputs. You may want to run the DeviceStatus SDK sample to check that there are valid detected inputs on each device.

Regards
Cameron
Offline

ShilpiR_beesys

  • Posts: 17
  • Joined: Mon Apr 22, 2019 7:15 am
  • Real Name: Shilpi Rustagi

Re: Synchronised Capture

PostTue Sep 28, 2021 8:38 am

Hi Cameron ,

Thanks for your reply but I am using single device for 6 inputs , the Video frames that I am receiving in the VideoInputFrameArrived callback have different frame times , I am getting the different frame time (obtained from GetFrameTime() ) for all the capture channels , is there a way out where i can get the same frame time ..
Offline

Cameron Nichols

Blackmagic Design

  • Posts: 442
  • Joined: Mon Sep 04, 2017 4:05 am

Re: Synchronised Capture

PostThu Sep 30, 2021 11:08 am

Hi Shilpi,

Synchronised Capture is the only way to ensure the stream times for all inputs are aligned - IDeckLinkVideoInputFrame::GetStreamTime will output the same stream time at the same frame period for all inputs.

But you must ensure that all inputs are locked to a common reference and the inputs are detected before you can start synchronised streams. It is not required that the DeckLink itself is locked to the same reference.

Regards
Cameron

Return to Software Developers

Who is online

Users browsing this forum: alatteri, oniongarlic and 6 guests