Opened 7 years ago

Last modified 6 years ago

#6550 new defect

Unknown input format: 'decklink' with decklink headers on Windows10

Reported by: Paul Pacifico Owned by:
Priority: normal Component: avdevice
Version: 3.3.6 Keywords: decklink
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no



Since ffmpeg 3.3 --enable-decklink is not available on zeranoe ffmpeg static builds.

I've build static ffmpeg 3.3.2 on osx without any problems, but on windows i try to compile ffmpeg 3.3.2 using MinGW64 with the followings headers :

  • DeckLinkAPI.h
  • DeckLinkAPI_i.c
  • DeckLinkAPIVersion.h

Decklink SDK is 10.9.3, headers created with widl.exe from .idl files.

configure options :

./configure --prefix=/mingw64 --extra-cflags=-I/mingw64/include --extra-ldflags=-L/mingw64/lib --enable-nonfree --enable-decklink --enable-libfreetype --enable-filter=drawtext --extra-version=static --extra-cflags=--static --enable-static --disable-debug --disable-shared --disable-ffplay --disable-ffprobe --disable-ffserver --disable-doc --disable-indev=qtkit --enable-avfilter --enable-small --enable-filters

command :

ffmpeg.exe -f decklink -list_devices 1 -i dummy

I get this error :

Unknown input format: 'decklink'

if you have any solutions.

Thanks and sorry for my bad english.


Change History (7)

comment:1 by RiCON, 7 years ago

Missing log.
Run ffmpeg.exe -devices and paste the output, at least.

comment:2 by Hendrik, 7 years ago

You should generally verify after running configure if decklink was actually enabled. You can check config.log for any related failures, if it is not.

comment:3 by Paul Pacifico, 7 years ago

ffmpeg.exe -devices output :

Microsoft Windows [version 6.3.9600]
(c) 2013 Microsoft Corporation. Tous droits réservés.

C:\Users\GA Etalo>C:\msys64\mingw64\bin\ffmpeg.exe -devices
ffmpeg version 3.3.2-static Copyright (c) 2000-2017 the FFmpeg developers
  built with gcc 6.2.0 (Rev2, Built by MSYS2 project)
  configuration: --prefix=/mingw64 --extra-cflags=-I/mingw64/Win/include --extra-ldflags=-L/mingw64/Win/lib --enable-nonfree --enable-decklink --enable-libfreet
ype --enable-filter=drawtext --extra-version=static --extra-cflags=--static --enable-static --disable-debug --disable-shared --disable-ffplay --disable-ffprobe --disable-ffserver --disable-doc --disable-indev=q
tkit --enable-avfilter --enable-small --enable-filters
  libavutil      55. 58.100 / 55. 58.100
  libavcodec     57. 89.100 / 57. 89.100
  libavformat    57. 71.100 / 57. 71.100
  libavdevice    57.  6.100 / 57.  6.100
  libavfilter     6. 82.100 /  6. 82.100
  libswscale      4.  6.100 /  4.  6.100
  libswresample   2.  7.100 /  2.  7.100
 D. = Demuxing supported
 .E = Muxing supported
 D  dshow
 D  lavfi
 D  vfwcap

comment:4 by Paul Pacifico, 7 years ago

config.log does not show failure on decklink...

comment:5 by RiCON, 7 years ago

You need to --enable-pthreads. 3.3.2 doesn't include;a=commit;h=9e86a61870c1652cdcc6a34646aee40d973ba23b which removed pthread dependency on decklink so it's silently disabled using the default w32threads.

Last edited 7 years ago by RiCON (previous) (diff)

comment:6 by Paul Pacifico, 7 years ago

Thank you so much !

works perftectly with --disable-w32threads

you made my day !

comment:7 by Carl Eugen Hoyos, 6 years ago

Component: ffmpegavdevice
Keywords: ffmpeg 3.3.2 removed
Version: git-master3.3.6
Note: See TracTickets for help on using tickets.