真正的答案可能是" no",但仍然只是要仔细检查。 有没有人能够在Windows(VS2013或VS2015)上构建ffmpeg x64?我知道没有经过大量修改就无法使用公开资源。但是,如果有人这样做,并且他愿意分享一些技巧......
编辑: 有趣的是,大多数所需的x64工具用于运行" configure"在没有依赖性的情况下分发,并且不可能将它们放在任何地方。看起来像一个专业的拖钓。
EDIT2: 有成千上万的错误:
fatal error C1083: Cannot open include file: 'features.h': No such file or directory
features.h缺少许多其他头文件。有没有解决方法,或者切换到Linux是唯一的选择?
答案 0 :(得分:2)
假设x64是指标准的64位版本,是的,这是可能的。有关FFmpeg的所有测试版本,请参阅fate页面,该列表中有各种32位和64位版本的Visual Studio,包括VS2013和VS2015 64位。搜索“Microsoft(R)C / C ++优化编译器版本18.00.40629 for x64”(或“19.00.24215.1”)或“VS2013”/“VS2015”,一直在底部。有关确切的构建选项,请参阅此处2013或此处2015。重要的是在$PATH
中使用64位命令行构建工具打开Windows shell,然后从那里打开msys shell,然后使用configure
选项运行--arch=x86_64 --target-os=win64 --toolchain=msvc
。有关更多详细信息,请参阅MSVC编译wiki页面。
答案 1 :(得分:1)
我曾经在使用MinGW的linux机器上编译ffmpeg,但现在我可以在Windows机器上编译,在我的情况下是Windows 10。
注意:强> 对我来说,它仅适用于ffmpeg版本> = 3.0并且我使用VS 2013和2015进行了测试
几个步骤,但非常重要:
下载并安装(YASM除外):
步骤:
我使用此配置:
./configure \
--toolchain=msvc \
--arch=x86_64 \
--enable-yasm \
--enable-asm\
--enable-shared \
--enable-w32threads \
--disable-programs \
--disable-ffserver \
--disable-doc \
--disable-static \
--prefix=/c/ffmpeg3.3/DLLS
<强>注2:强> 如果您使用了最后一行 --prefix = / c / ffmpeg3.3 / DLLS ,作为最后一步,请运行make install,二进制文件将被复制到该路径
希望它有所帮助。
祝你好运
答案 2 :(得分:0)
FFmpeg页面本身有一个操作方法。到目前为止它对我不起作用,但至少你应该摆脱C99错误等等。
https://trac.ffmpeg.org/wiki/CompilationGuide/MSVC
也许你尝试安装这些东西(我必须与Msys2分开下载pkg-config才能工作)并按照以下步骤操作。
答案 3 :(得分:0)
不,它无法完成。 MS编译器不支持#include_next。此外,还有许多其他问题......你需要MinGW。