Synchronised Capture
Posted:
Mon Sep 20, 2021 10:27 am
by ShilpiR_beesys
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 (14.09 KiB) Viewed 2505 times
Re: Synchronised Capture
Posted:
Thu Sep 23, 2021 6:13 am
by Cameron Nichols
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
Re: Synchronised Capture
Posted:
Tue Sep 28, 2021 8:38 am
by ShilpiR_beesys
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 ..
Re: Synchronised Capture
Posted:
Thu Sep 30, 2021 11:08 am
by Cameron Nichols
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