avdevice/decklink: fix checking video mode in SDK version 11

Apparently in the new SDK one cannot query if VANC output is supported, so we
will fall back to non-VANC output if enabling the video output with VANC fails.

Fixes ticket #7867.

Signed-off-by: Marton Balint <cus@passwd.hu>
This commit is contained in:
Marton Balint
2019-05-01 12:47:43 +02:00
parent 73f234fdf8
commit 15b8f36be1
2 changed files with 10 additions and 13 deletions

View File

@@ -197,8 +197,11 @@ static int decklink_setup_video(AVFormatContext *avctx, AVStream *st)
" Check available formats with -list_formats 1.\n");
return -1;
}
if (ctx->dlo->EnableVideoOutput(ctx->bmd_mode,
ctx->supports_vanc ? bmdVideoOutputVANC : bmdVideoOutputFlagDefault) != S_OK) {
if (ctx->supports_vanc && ctx->dlo->EnableVideoOutput(ctx->bmd_mode, bmdVideoOutputVANC) != S_OK) {
av_log(avctx, AV_LOG_WARNING, "Could not enable video output with VANC! Trying without...\n");
ctx->supports_vanc = 0;
}
if (!ctx->supports_vanc && ctx->dlo->EnableVideoOutput(ctx->bmd_mode, bmdVideoOutputFlagDefault) != S_OK) {
av_log(avctx, AV_LOG_ERROR, "Could not enable video output!\n");
return -1;
}