Opened 12 months ago

Last modified 6 months ago

#6550 new defect

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

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

Description

Hi,

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.

Paul.

Change History (7)

comment:1 Changed 12 months ago by RiCON

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

comment:2 Changed 12 months ago by heleppkes

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 Changed 12 months ago by paulpacifico

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
Devices:
 D. = Demuxing supported
 .E = Muxing supported
 --
 D  dshow
 D  lavfi
 D  vfwcap

comment:4 Changed 12 months ago by paulpacifico

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

comment:5 Changed 12 months ago by RiCON

You need to --enable-pthreads. 3.3.2 doesn't include http://git.videolan.org/?p=ffmpeg.git;a=commit;h=9e86a61870c1652cdcc6a34646aee40d973ba23b which removed pthread dependency on decklink so it's silently disabled using the default w32threads.

Last edited 12 months ago by RiCON (previous) (diff)

comment:6 Changed 12 months ago by paulpacifico

Thank you so much !

works perftectly with --disable-w32threads

you made my day !

comment:7 Changed 6 months ago by cehoyos

  • Component changed from ffmpeg to avdevice
  • Keywords ffmpeg 3.3.2 removed
  • Version changed from git-master to 3.3.6
Note: See TracTickets for help on using tickets.