- Posts: 14
- Joined: Thu Dec 17, 2015 12:16 pm
TLDR:
Decklink: When reference input is flipping during scheduled playback, audio buffer is consumed to end. This causes lip-sync problems, and ultimately breaks audio output.
The lip-sync problem can be easily observed in Media Express, and the observed delay was huge even after first reference lock, however I was not able to break the audio completely.
Tested on Decklink 8K Pro with 11.5.1 and 12.3 drivers, using PAL blackburst as reference.
Playing standard vistek test, it becomes clear that during syncing to input reference, video is delayed to be in sync in reference (for unknown reason there are also some black frames at output), but audio plays uninterrupted, what results in consuming audio samples, while not consuming video (because of the wait).
Using standard IDecklinkOutput::StartScheduledPlayback after IDecklinkOutput::EnableAudioOutput with BMDAudioOutputStreamType::bmdAudioOutputStreamTimestamped and correct timestamping of the samples and video.
A workaround was implemented in https://github.com/jaskie/Server/commit/9d4aff7b03d35df27c35ec3dead689fc9eeb6699, but it not ensure precise samples addendum.
Decklink: When reference input is flipping during scheduled playback, audio buffer is consumed to end. This causes lip-sync problems, and ultimately breaks audio output.
The lip-sync problem can be easily observed in Media Express, and the observed delay was huge even after first reference lock, however I was not able to break the audio completely.
Tested on Decklink 8K Pro with 11.5.1 and 12.3 drivers, using PAL blackburst as reference.
Playing standard vistek test, it becomes clear that during syncing to input reference, video is delayed to be in sync in reference (for unknown reason there are also some black frames at output), but audio plays uninterrupted, what results in consuming audio samples, while not consuming video (because of the wait).
Using standard IDecklinkOutput::StartScheduledPlayback after IDecklinkOutput::EnableAudioOutput with BMDAudioOutputStreamType::bmdAudioOutputStreamTimestamped and correct timestamping of the samples and video.
A workaround was implemented in https://github.com/jaskie/Server/commit/9d4aff7b03d35df27c35ec3dead689fc9eeb6699, but it not ensure precise samples addendum.