是否可以在 Windows 上构建 ffmpeg x64?

3 ffmpeg build msvc12

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

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

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

fatal error C1083: Cannot open include file: 'features.h': No such file or directory
Run Code Online (Sandbox Code Playgroud)

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

twe*_*llt 7

我曾经在带有 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 (x86) 或 x64 (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 并制作

我使用这个配置:

./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
Run Code Online (Sandbox Code Playgroud)

注意2: 如果您使用了最后一行--prefix=/c/ffmpeg3.3/DLLS,作为最后一步,运行 make install 并且二进制文件将被复制到该路径

希望它有所帮助。

祝你好运


Mal*_*rac 0

不,这是不可能的。MS 编译器不支持#include_next。另外,还有许多其他问题...您需要 MinGW。