- Posts: 12
- Joined: Thu Oct 20, 2016 8:18 pm
I have the following cards for testing:
In running the "VANC Output" example code delivered with the SDK, it works fine with the default settings for the output cards:
It also works fine if I modify the Display Mode:
However, if I attempt to use any pixel format other than "bmdFormat10BitYUV," the frame fails to be scheduled.
The Video Frame was created without error.
The Ancillary Data was created without error.
The Ancillary Data was attached to the Frame without error.
But scheduling the frames fails. On either output card.
I know the SDK indicates that for VANC Capture, the 4K card will always assume the Ancillary Data is in 10-bit YUV format, regardless of the active picture format. Non-4K cards will be the same as active picture format. But this doesn't seem to apply to output.
I don't have a way to verify the capture of Ancillary Data in a non-YUV video, as neither of my outputs card seem to support it for testing.
Is this expected behavior?
Is there a workaround?
- DeckLink Duo 2
DeckLink Mini Monitor 4K
DeckLink Mini Recorder 4K
In running the "VANC Output" example code delivered with the SDK, it works fine with the default settings for the output cards:
- Code: Select all
// Video mode parameters
const BMDDisplayMode kDisplayMode = bmdModeHD1080i50;
const BMDVideoOutputFlags kOutputFlag = bmdVideoOutputVANC;
const BMDPixelFormat kPixelFormat = bmdFormat10BitYUV;
It also works fine if I modify the Display Mode:
- Code: Select all
// Video mode parameters
const BMDDisplayMode kDisplayMode = bmdModeHD1080p2398;
const BMDVideoOutputFlags kOutputFlag = bmdVideoOutputVANC;
const BMDPixelFormat kPixelFormat = bmdFormat10BitYUV;
However, if I attempt to use any pixel format other than "bmdFormat10BitYUV," the frame fails to be scheduled.
- Code: Select all
// Video mode parameters
const BMDDisplayMode kDisplayMode = bmdModeHD1080p2398;
const BMDVideoOutputFlags kOutputFlag = bmdVideoOutputVANC;
const BMDPixelFormat kPixelFormat = bmdFormat10BitRGB;
The Video Frame was created without error.
The Ancillary Data was created without error.
The Ancillary Data was attached to the Frame without error.
But scheduling the frames fails. On either output card.
I know the SDK indicates that for VANC Capture, the 4K card will always assume the Ancillary Data is in 10-bit YUV format, regardless of the active picture format. Non-4K cards will be the same as active picture format. But this doesn't seem to apply to output.
I don't have a way to verify the capture of Ancillary Data in a non-YUV video, as neither of my outputs card seem to support it for testing.
Is this expected behavior?
Is there a workaround?
2.4.7.1 VANC Capture
An application performing VANC data capture should perform the following steps:
- IDeckLinkInput::EnableVideoInput]
The pixel format that is specified will apply to both active picture and ancillary data with
non-4K DeckLink devices.
When capturing ancillary data with a 4K DeckLink device, the ancillary data will always
be in the 10-bit YUV pixel format.