Commit a6f6726a authored by Marton Balint's avatar Marton Balint

avdevice/decklink: warn about too old decklink API version

Signed-off-by: 's avatarMarton Balint <cus@passwd.hu>
parent acaf6c62
......@@ -70,9 +70,30 @@ static IDeckLinkIterator *decklink_create_iterator(AVFormatContext *avctx)
#else
iter = CreateDeckLinkIteratorInstance();
#endif
if (!iter)
if (!iter) {
av_log(avctx, AV_LOG_ERROR, "Could not create DeckLink iterator. "
"Make sure you have DeckLink drivers " BLACKMAGIC_DECKLINK_API_VERSION_STRING " or newer installed.\n");
} else {
IDeckLinkAPIInformation *api;
int64_t version;
#ifdef _WIN32
if (CoCreateInstance(CLSID_CDeckLinkAPIInformation, NULL, CLSCTX_ALL,
IID_IDeckLinkAPIInformation, (void**) &api) != S_OK) {
api = NULL;
}
#else
api = CreateDeckLinkAPIInformationInstance();
#endif
if (api && api->GetInt(BMDDeckLinkAPIVersion, &version) == S_OK) {
if (version < BLACKMAGIC_DECKLINK_API_VERSION)
av_log(avctx, AV_LOG_WARNING, "Installed DeckLink drivers are too old and may be incompatible with the SDK this module was built against. "
"Make sure you have DeckLink drivers " BLACKMAGIC_DECKLINK_API_VERSION_STRING " or newer installed.\n");
} else {
av_log(avctx, AV_LOG_ERROR, "Failed to check installed DeckLink API version.\n");
}
if (api)
api->Release();
}
return iter;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment