Page 1 of 1

VANC Issues with Decklink Cards and 1080P50 1080P5994

PostPosted: Fri Feb 22, 2019 8:14 pm
by stanislav.petkov

After hours of trying to produce proper VANC packets delivery (Closed captions,AFD, SCTE104) I have found that with driver 10.11.4 and latest SDK using Decklink DUO2, Decklink 4K Extreme the following happen:

Using IDeckLinkVideoFrameAncillaryPackets attach, if I set line number there are no packets produced over SDI. If I set 0 as Line number the packets are produced every second frame. I have found that this is connected with "When Pause: Display Single field on video output <Which was default for me>. If you set it to Display a full frame on video output" the issue with skipping VANC data on every second frame disappears.

No matter what you do setting line number does not work.

For information everything works perfectly up to 1080P30 inclusive. This including setting Line number and proper packets delivery no matter how "When Paused" setting is set.

Is there anything I can do so we can set proper line numbers when delivering VANC packets.

The easiest way to reproduce the issue is to modify your Closed Captions example:
const uint32_t kFrameDuration = 1001;
const uint32_t kTimeScale = 60000;

Re: VANC Issues with Decklink Cards and 1080P50 1080P5994

PostPosted: Thu Dec 02, 2021 4:41 pm
by asperi
If you have a moment, could you elaborate on how you got captions out a decklink card? Thanks!

Re: VANC Issues with Decklink Cards and 1080P50 1080P5994

PostPosted: Fri Dec 10, 2021 3:58 pm
by petrno

I am using DeckLink Duo 2 and Quad 2 as well as UltraStudio thunderbolt.

I am able to extract and insert VANC data for 1080p50 and 1080i50, for insertion with a line specification. You need to be careful that the line number is a valid VANC line number for the given video mode.

This is tested in DeckLink SDK 12.1 and 12.2 and corresponding DesktopVideo. The 11.4 has worked as well if I remember (but see note below about 11.4 and 1080i50).

We do use the "Display a full frame" setting, we have not tested the "Display a Single Field".

There is a confirmed bug in the BMD stack when you try to insert VANC into an *input* frame with 1080p50 - the VANC is missing on output. However, if you copy the frame and add the VANC data to the newly created frame, it works fine (this assumes you are inserting on the fly - say from network or file source for the VANC data - into input SDI port to another output SDI port). Tested both in half-duplex and full-duplex modes. The same error was for 1080i50 in 11.4 and earlier, but this was fixed in 12.1, so 1080i50 works directly with the input frame (less CPU for copying the frame content). You also need to copy any VANC data and/or timecode from the input to the output if you want to preserve those.