[FFmpeg-trac] #7789(avdevice:new): Fails to compile with Blackmagic Decklink SDK 11.0
FFmpeg
trac at avcodec.org
Wed Mar 13 20:39:24 EET 2019
#7789: Fails to compile with Blackmagic Decklink SDK 11.0
--------------------------------------+----------------------------------
Reporter: llogan | Owner:
Type: defect | Status: new
Priority: normal | Component: avdevice
Version: git-master | Keywords: decklink
Blocked By: | Blocking:
Reproduced by developer: 0 | Analyzed by developer: 0
--------------------------------------+----------------------------------
{{{
./configure --enable-nonfree --enable-decklink && make
[...]
CXX libavdevice/decklink_common.o
cc1plus: warning: command line option ‘-Wdeclaration-after-statement’ is
valid for C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wmissing-prototypes’ is valid for
C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wno-pointer-to-int-cast’ is valid
for C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for
C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wno-pointer-sign’ is valid for
C/ObjC but not for C++
cc1plus: warning: command line option ‘-std=c11’ is valid for C/ObjC but
not for C++
In file included from libavdevice/decklink_common.cpp:54:
libavdevice/decklink_common.h:90:5: error: ‘IDeckLinkAttributes’ does not
name a type; did you mean ‘BMDDeckLinkAttributeID’?
IDeckLinkAttributes *attr;
^~~~~~~~~~~~~~~~~~~
BMDDeckLinkAttributeID
libavdevice/decklink_common.cpp: In function ‘int
decklink_get_attr_string(IDeckLink*, BMDDeckLinkAttributeID, const
char**)’:
libavdevice/decklink_common.cpp:84:5: error: ‘IDeckLinkAttributes’ was not
declared in this scope
IDeckLinkAttributes *attr;
^~~~~~~~~~~~~~~~~~~
libavdevice/decklink_common.cpp:84:5: note: suggested alternative:
‘BMDDeckLinkAttributeID’
IDeckLinkAttributes *attr;
^~~~~~~~~~~~~~~~~~~
BMDDeckLinkAttributeID
libavdevice/decklink_common.cpp:84:26: error: ‘attr’ was not declared in
this scope
IDeckLinkAttributes *attr;
^~~~
libavdevice/decklink_common.cpp:84:26: note: suggested alternative: ‘atol’
IDeckLinkAttributes *attr;
^~~~
atol
libavdevice/decklink_common.cpp:86:28: error: ‘IID_IDeckLinkAttributes’
was not declared in this scope
if (dl->QueryInterface(IID_IDeckLinkAttributes, (void **)&attr) !=
S_OK)
^~~~~~~~~~~~~~~~~~~~~~~
libavdevice/decklink_common.cpp:86:28: note: suggested alternative:
‘BMDDeckLinkAttributeID’
if (dl->QueryInterface(IID_IDeckLinkAttributes, (void **)&attr) !=
S_OK)
^~~~~~~~~~~~~~~~~~~~~~~
BMDDeckLinkAttributeID
libavdevice/decklink_common.cpp: In function ‘int
decklink_select_input(AVFormatContext*, BMDDeckLinkConfigurationID)’:
libavdevice/decklink_common.cpp:112:20: error: ‘struct decklink_ctx’ has
no member named ‘attr’
res = ctx->attr->GetInt(attr_id, &supported_connections);
^~~~
libavdevice/decklink_common.cpp: In function ‘int
ff_decklink_set_configs(AVFormatContext*, decklink_direction_t)’:
libavdevice/decklink_common.cpp:152:18: error: ‘struct decklink_ctx’ has
no member named ‘attr’
if
(ctx->attr->GetFlag(BMDDeckLinkSupportsDuplexModeConfiguration,
&duplex_supported) != S_OK)
^~~~
libavdevice/decklink_common.cpp:152:32: error:
‘BMDDeckLinkSupportsDuplexModeConfiguration’ was not declared in this
scope
if
(ctx->attr->GetFlag(BMDDeckLinkSupportsDuplexModeConfiguration,
&duplex_supported) != S_OK)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
libavdevice/decklink_common.cpp:152:32: note: suggested alternative:
‘BMDDeckLinkSupportsInputFormatDetection’
if
(ctx->attr->GetFlag(BMDDeckLinkSupportsDuplexModeConfiguration,
&duplex_supported) != S_OK)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BMDDeckLinkSupportsInputFormatDetection
libavdevice/decklink_common.cpp:156:36: error:
‘bmdDeckLinkConfigDuplexMode’ was not declared in this scope
res = ctx->cfg->SetInt(bmdDeckLinkConfigDuplexMode,
ctx->duplex_mode == 2 ? bmdDuplexModeFull : bmdDuplexModeHalf);
^~~~~~~~~~~~~~~~~~~~~~~~~~~
libavdevice/decklink_common.cpp:156:36: note: suggested alternative:
‘bmdDeckLinkConfigCaptureGroup’
res = ctx->cfg->SetInt(bmdDeckLinkConfigDuplexMode,
ctx->duplex_mode == 2 ? bmdDuplexModeFull : bmdDuplexModeHalf);
^~~~~~~~~~~~~~~~~~~~~~~~~~~
bmdDeckLinkConfigCaptureGroup
libavdevice/decklink_common.cpp:156:89: error: ‘bmdDuplexModeFull’ was not
declared in this scope
res = ctx->cfg->SetInt(bmdDeckLinkConfigDuplexMode,
ctx->duplex_mode == 2 ? bmdDuplexModeFull : bmdDuplexModeHalf);
^~~~~~~~~~~~~~~~~
libavdevice/decklink_common.cpp:156:89: note: suggested alternative:
‘bmdDuplexFull’
res = ctx->cfg->SetInt(bmdDeckLinkConfigDuplexMode,
ctx->duplex_mode == 2 ? bmdDuplexModeFull : bmdDuplexModeHalf);
libavdevice/decklink_common.cpp:156:109: error: ‘bmdDuplexModeHalf’ was
not declared in this scope
res = ctx->cfg->SetInt(bmdDeckLinkConfigDuplexMode,
ctx->duplex_mode == 2 ? bmdDuplexModeFull : bmdDuplexModeHalf);
^~~~~~~~~~~~~~~~~
libavdevice/decklink_common.cpp:156:109: note: suggested alternative:
‘bmdDuplexHalf’
res = ctx->cfg->SetInt(bmdDeckLinkConfigDuplexMode,
ctx->duplex_mode == 2 ? bmdDuplexModeFull : bmdDuplexModeHalf);
^~~~~~~~~~~~~~~~~
bmdDuplexHalf
libavdevice/decklink_common.cpp: In function ‘int
ff_decklink_set_format(AVFormatContext*, int, int, int, int, AVFieldOrder,
decklink_direction_t, int)’:
libavdevice/decklink_common.cpp:190:5: error: ‘BMDDisplayModeSupport’ was
not declared in this scope
BMDDisplayModeSupport support;
^~~~~~~~~~~~~~~~~~~~~
libavdevice/decklink_common.cpp:190:5: note: suggested alternative:
‘bmdDisplayModeSupports3D’
BMDDisplayModeSupport support;
^~~~~~~~~~~~~~~~~~~~~
bmdDisplayModeSupports3D
libavdevice/decklink_common.cpp:254:45: error: ‘support’ was not declared
in this scope
&support, NULL) != S_OK)
^~~~~~~
libavdevice/decklink_common.cpp:254:45: note: suggested alternative:
‘ushort’
&support, NULL) != S_OK)
^~~~~~~
ushort
libavdevice/decklink_common.cpp:259:68: error: ‘support’ was not declared
in this scope
&support, NULL) != S_OK) {
^~~~~~~
libavdevice/decklink_common.cpp:259:68: note: suggested alternative:
‘ushort’
&support, NULL) != S_OK) {
^~~~~~~
ushort
libavdevice/decklink_common.cpp:270:9: error: ‘support’ was not declared
in this scope
if (support == bmdDisplayModeSupported)
^~~~~~~
libavdevice/decklink_common.cpp:270:9: note: suggested alternative:
‘ushort’
if (support == bmdDisplayModeSupported)
^~~~~~~
ushort
libavdevice/decklink_common.cpp:270:20: error: ‘bmdDisplayModeSupported’
was not declared in this scope
if (support == bmdDisplayModeSupported)
^~~~~~~~~~~~~~~~~~~~~~~
libavdevice/decklink_common.cpp:270:20: note: suggested alternative:
‘bmdDisplayModeSupports3D’
if (support == bmdDisplayModeSupported)
^~~~~~~~~~~~~~~~~~~~~~~
bmdDisplayModeSupports3D
libavdevice/decklink_common.cpp: In function ‘void
ff_decklink_cleanup(AVFormatContext*)’:
libavdevice/decklink_common.cpp:434:14: error: ‘struct decklink_ctx’ has
no member named ‘attr’
if (ctx->attr)
^~~~
libavdevice/decklink_common.cpp:435:14: error: ‘struct decklink_ctx’ has
no member named ‘attr’
ctx->attr->Release();
^~~~
libavdevice/decklink_common.cpp: In function ‘int
ff_decklink_init_device(AVFormatContext*, const char*)’:
libavdevice/decklink_common.cpp:476:33: error: ‘IID_IDeckLinkAttributes’
was not declared in this scope
if (ctx->dl->QueryInterface(IID_IDeckLinkAttributes, (void
**)&ctx->attr) != S_OK) {
^~~~~~~~~~~~~~~~~~~~~~~
libavdevice/decklink_common.cpp:476:33: note: suggested alternative:
‘BMDDeckLinkAttributeID’
if (ctx->dl->QueryInterface(IID_IDeckLinkAttributes, (void
**)&ctx->attr) != S_OK) {
^~~~~~~~~~~~~~~~~~~~~~~
BMDDeckLinkAttributeID
libavdevice/decklink_common.cpp:476:73: error: ‘struct decklink_ctx’ has
no member named ‘attr’
if (ctx->dl->QueryInterface(IID_IDeckLinkAttributes, (void
**)&ctx->attr) != S_OK) {
^~~~
make: *** [ffbuild/common.mak:63: libavdevice/decklink_common.o] Error 1
}}}
Reported by m4xx3d0ut. Says it works with SDK 10.11.4.
--
Ticket URL: <https://trac.ffmpeg.org/ticket/7789>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list