Hi. I'm stuck in trying to build ffmpeg binary with --enable-decklink option...
Did someone manage to build ffmpeg (current git version) with decklink support?
I'm totally lost...
To build windows ffmpeg binary with decklink support you may want to get the latest Decklink SDK:
http://software.blackmagicdesign.com/SD ... 10.3.1.zip
Extract the archive for example to "D:\Blackmagic_DeckLink_SDK_10.3.1\Win\include", then use midl(Microsoft Interface Definition Language) compiler from Visual Studio to generate DeckLinkAPI.h file from DeckLinkAPI.idl like this:
Code: Select all
D:\Blackmagic_DeckLink_SDK_10.3.1\Win\include>midl /h DeckLinkAPI.h DeckLinkAPI.idl
Microsoft (R) 32b/64b MIDL Compiler Version 7.00.0555
Copyright (c) Microsoft Corporation. All rights reserved.
64 bit Processing .\DeckLinkAPI.idl
64 bit Processing C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\unknwn.idl
64 bit Processing C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\wtypes.idl
64 bit Processing C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\basetsd.h
64 bit Processing C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\guiddef.h
64 bit Processing C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\oaidl.idl
64 bit Processing C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\objidl.idl
64 bit Processing C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\oaidl.acf
You also may want to use this nice script - media-autobuild_suite-master(with little modifications - see the attachment) to build ffmpeg:
Download the .zip archive and extract it for example in "D:\media-autobuild_suite-master"
Now you may want to edit the attached/modified compile_localtools.sh file to replace extra-cflags include path with location of your Decklink SDK(line 1574 in compile_localtools.sh).
You may notice a little decklink_common.cpp patching incorporated in compile_localtools.sh - lines 1577 and 1578:
Code: Select all
sed -i "s/static char \*dup_wchar_to_utf8/extern char \*dup_wchar_to_utf8/g" libavdevice/decklink_common.cpp
sed -i "s/free((void \*) tmpDisplayName)\;//g" libavdevice/decklink_common.cpp
Replace original compile_localtools.sh with the modified version and run media-autobuild_suite.bat.
Select 64bit building environment and 64bit builds(the modified compile_localtools.sh reflects only 64bit ffmpeg build) when you prompted.
After some(about 15min.) time you should get mingw-w64 building environment and ffmpeg.exe in "build64\ffmpeg-git" subfolder.
That's it! Good luck!