3

真正的答案可能是“不”,但仍然只是为了仔细检查。有没有人能够在 Windows(VS2013 或 VS2015)上构建 ffmpeg x64?我知道如果没有大量修改,公开可用的资源是不可能的。但是,如果有人这样做并且他愿意分享一些提示......

编辑:有趣的是,运行“配置”所需的大多数 x64 工具是如何在没有依赖关系的情况下分发的,并且不可能在任何地方获得它们。看起来像一个专业的拖钓。

Edit2:有成千上万这样的错误:

fatal error C1083: Cannot open include file: 'features.h': No such file or directory

features.h 缺少许多其他头文件。有没有解决办法,或者切换到 Linux 是唯一的选择?

4

4 回答 4

8

我曾经使用 MinGW 在 linux 机器上编译 ffmpeg,但现在我可以在 Windows 机器上编译,在我的情况下是 Windows 10。

注意: 对我来说,它仅适用于 ffmpeg 版本 >= 3.0,我使用 VS 2013 和 2015 进行了测试

几个步骤但非常重要:

下载安装(YASM除外):

脚步:

  1. 将 MSYS2 安装到固定文件夹(例如:C:\Dev\msys64)
  2. 运行 msys2.exe
  3. 执行命令“pacman -S make gcc diffutils”并按“Y”安装
  4. 关闭 msys2
  5. 将 C:\Dev\msys64\usr\bin\link.exe 重命名为其他名称(例如:msys2_link.exe)
  6. 将“yasm--win64.exe”复制并重命名为“C:\Dev\yasm.exe”
  7. 将“C:\Dev”添加到环境变量 PATH
  8. 运行 VS2013/2015 x86 (for x86) 或 x64 for (x64) 命令提示符
  9. 执行“C:\Dev\msys64\msys2_shell.cmd -msys -use-full-path”
  10. 在 msys2 窗口上执行“which cl”,你应该看到你的 VS 的路径
  11. 执行“哪个链接”,您还应该看到 VS 的路径
  12. 转到ffmpeg源路径(例如:“cd /c/ffmpeg3.3”)
  13. 运行 ./configure 和 make

我使用这个配置:

./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 并且二进制文件将被复制到该路径

希望它有所帮助。

祝你好运

于 2017-06-15T00:04:41.430 回答
4

假设 x64 是指标准的 64 位版本,是的,这是可能的。查看所有 FFmpeg 测试版本的命运页面,该列表中有各种 32 位和 64 位版本的 Visual Studio,包括 VS2013 和 VS2015 64 位。一直在底部搜索“Microsoft (R) C/C++ Optimizing Compiler Version 18.00.40629 for x64”(或“19.00.24215.1”)或“VS2013”​​/“VS2015”。有关确切的构建选项,请参见此处2013或此处2015。重要的部分是使用 64 位命令行构建工具打开一个 Windows shell $PATH,然后从那里打开一个 msys shell,然后configure使用--arch=x86_64 --target-os=win64 --toolchain=msvc选项运行。有关更多详细信息,请参阅 MSVC 编译wiki页面。

于 2016-12-28T15:09:14.403 回答
1

不,不能这样做。MS 编译器不支持#include_next。另外,还有许多其他问题……您需要 MinGW。

于 2017-05-31T11:51:00.627 回答
0

FFmpeg 页面本身有一个 How-to。到目前为止它对我不起作用,但至少你应该摆脱 C99 错误等等。

https://trac.ffmpeg.org/wiki/CompilationGuide/MSVC

也许您尝试安装这些东西(我必须使用 Msys2 单独下载 pkg-config 才能正常工作)并按照以下步骤操作。

于 2017-04-19T07:50:22.720 回答