Windows下FFmpeg库编译安装指南

这篇具有很好参考价值的文章主要介绍了Windows下FFmpeg库编译安装指南。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        之前在学习FFmpeg时,都是网上零零散散的知识点拼凑起来,没有经过系统地学习,最近时间比较多,于是决定开始深入学习FFmpeg,从自己动手编译源码开始。

本文记录了在自己编译过程中踩的坑,以及完整的编译安装流程,建议先看踩过的坑里面最后一条

目录

环境准备

安装MSYS2及编译工具链

FFmpeg源码下载

x264源码下载

SDL下载

编译和安装

踩过的坑

参考文章


环境准备

  • 安装并配置MYSY2
  • 下载FFmpeg源码
  • 下载x264源码
  • 下载SDL源码(可选,在编译FFplay.exe时需要)

安装MSYS2及编译工具链

        MSYS2 是 Windows 下的一组编译套件,它可以在 Windows 系统中模拟 Linux 下的编译环境,如使用 shell 运行命令、使用 pacman 安装软件包、使用 gcc (MinGW) 编译代码等。简单来说,使用 MSYS2 ,你可以通过在 Linux 下非常熟悉的各种命令,来编译 Windows 下的软件。MSYS2官网下载exe安装包,管理员权限安装,安装后会有6个shell程序

ffmpeg 编译windows库,FFmpeg,音视频

 启动MSYS2 MINGW64,依次输入以下命令行开始安装mingw64编译链和基本依赖

sed -i "s#mirror.msys2.org/#mirrors.ustc.edu.cn/msys2/#g" /etc/pacman.d/mirrorlist*
pacman -Sy #提高下载速度,将下载源换成中科大的

pacman -S mingw-w64-x86_64-toolchain  # mingw64编译工具链,win下的gcc,用于编译64位的库
pacman -S mingw-w64-i686-toolchain # 用于编译32位的库
pacman -S base-devel    # 一些基本的编译工具
pacman -S yasm nasm     # 汇编器

FFmpeg源码下载

在FFmpeg官网下载源码

ffmpeg 编译windows库,FFmpeg,音视频

 ffmpeg 编译windows库,FFmpeg,音视频

三个包都可以下载

x264源码下载

去x264官网下载

ffmpeg 编译windows库,FFmpeg,音视频

SDL下载

去SDL官网下载

ffmpeg 编译windows库,FFmpeg,音视频

 ffmpeg 编译windows库,FFmpeg,音视频

编译和安装

        将下载好的安装好放在同一个目录(路径中不能有空格和中文),解压所有文件到当前目录,为了区分源码目录和库的安装目录,建议修改下名称(非必要)

ffmpeg 编译windows库,FFmpeg,音视频

 新建编译安装脚本文件.sh,复制以下命令,其中./configure编译参数可打开对应源码目录下的configure文件查看,这里参数仅供参考,参数含义可查看FFmpeg编译参数分析 - 掘金

#!/bin/sh
#进入执行脚本所在目录
basepath=$(cd `dirname $0`;pwd)
echo ${basepath}

#进入h264源码目录
cd ${basepath}/x264-src   # 根据路径名称自行修改
pwd
#配置编译参数
./configure --prefix=${basepath}/x264-install --enable-shared
#开始16线程编译
make -j16
#将编译后的文件拷贝到--prefix参数配置目录
make install

#进入ffmpeg源码目录
cd ${basepath}/ffmpeg-5.1.2-src  # 根据路径名称自行修改
pwd
#指定PKG_CONFIG_PATH变量,告知编译器x264库的路径
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:${basepath}/x264-install/lib/pkgconfig
echo ${PKG_CONFIG_PATH}
#配置编译参数
./configure --prefix=${basepath}/ffmpeg-5.1.2-install \
--enable-gpl \
--enable-libx264 \
--disable-static \
--enable-shared \
--enable-sdl2 \
--enable-ffplay \
--enable-ffprobe \
--enable-ffmpeg \
--disable-vulkan \
--extra-cflags=-l${basepath}/x264-install/include \
--extra-ldflags=-L${basepath}/x264-install/lib

#开始16线程编译
make -j16
#将编译后的文件拷贝到--prefix参数配置目录
make install

打开SDL源码中的sdl2-config文件

ffmpeg 编译windows库,FFmpeg,音视频

修改其中的prefix路径,具体路径根据你文件所在位置确定,不能直接复制文件资源管理器中的路径,需要修改为以下格式

prefix=/e/shell/SDL2-2.26.3/x86_64-w64-mingw32

ffmpeg 编译windows库,FFmpeg,音视频

打开FFmpeg源码目录中的configure文件

ffmpeg 编译windows库,FFmpeg,音视频

修改SDL2_CONFIG路径,规则同上

SDL2_CONFIG="/e/shell/SDL2-2.26.3/x86_64-w64-mingw32/bin/sdl2-config"

 ffmpeg 编译windows库,FFmpeg,音视频

 打开MSYS2 MINGW64,进入脚本所在目录,执行脚本,等待编译安装完成,大概十分钟左右

 cd /e/shell
./build-ffmpeg-5.1.2.sh

 编译安装完成后就可以在install目录下看到库文件了ffmpeg 编译windows库,FFmpeg,音视频

踩过的坑

1.源码所在目录路径中含有中文,会导致在编译FFmpeg时提示找不到x264库,如下图

ffmpeg 编译windows库,FFmpeg,音视频

2.未修改SDL源码中sdl2-config文件和FFmpeg源码configure文件中的SDL相关路径,会在编译FFmpeg时提示找不到SDL库,如下图

ffmpeg 编译windows库,FFmpeg,音视频

3.配置FFmpeg编译参数时,未添加--disable-vulkan,在编译时会报错,未知原因,暂不知道禁用这个模块会有什么影响(又给自己挖了个坑)

ffmpeg 编译windows库,FFmpeg,音视频

4.编译32位时提示无法找到c编译器,解决方法参考linux 下 编译 x264 遇到的 No working C compiler found 错误_老姚---老姚的博客-CSDN博客

 5.本文用的是mingw编译器来编译FFmpeg,这样编译出来的库只能在使用mingw编译器的工程中使用,否则会出问题,我本来是打算用VS+Qt+FFmpeg库来做一个项目的,使用msvc编译器,引入上述方法编译的库之后,程序无法启动,查了下才知道mingw编译器与msvc无法兼容,而且VS还不能使用mingw编译器,只好再找找用msvc编译器编译FFmpeg的方法了,好在没花多久就找到了解决方法,看了这位大佬的文章才知道,新版本的FFmpeg自带h264编解码器,不需要额外下载h264源码自己编译,另外,如果不需要编译ffplay.exe的话,SDL源码也不需要下载了,这样编译的流程就简化了很多,且基本无坑,一遍就能通过,后面会整理下自己用msvc编译ffmpeg的过程发出来

参考文章

win10编译ffmpeg和ffplay - 简书

win10编译ffmpeg和ffplay - 简书 (jianshu.com)

FFmpeg编译参数分析 - 掘金

linux 下 编译 x264 遇到的 No working C compiler found 错误_老姚---老姚的博客-CSDN博客

解决Android NDK编译FFmpeg 4.2.2的x86 cpu版时的问题 – K-Res的Blog

window10_ffmpeg-msys2-msvc编译_h264_mf_Loken2020的博客-CSDN博客 文章来源地址https://www.toymoban.com/news/detail-640968.html

到了这里,关于Windows下FFmpeg库编译安装指南的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • windows10|音视频剪辑|FFMPEG录屏和网络推流源初步的生成

    FFMPEG的功能强大是毋庸置疑的,那么录屏的需求大家在某些时候大家可能是非常需要的,例如,现有的项目需要演示,因此录制一段演示视频;亦或者做内容分发直播的,比如游戏主播,需要录制在玩某个游戏的精彩片段,以创建一个后期的视频素材库; 亦或者通过FFMPEG抓取

    2024年02月20日
    浏览(71)
  • Windows编译和使用ffmpeg

    ffmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。其实 ffmpeg 只是对该框架的通俗称呼,该框架本质上为 libav,ffmpeg 也只是基于 libav 开发的一套工具。libav 框架可以编译在其他平台进行使用,在下载的源码中,包含有 configure 程序来进行

    2023年04月08日
    浏览(39)
  • Windows下如何编译FFmpeg

      ffmpeg一般在linux环境中使用,但是我们目前很多的开发工具是windows,为了方便在windows下调试和使用ffmpeg,我们需要再windows下面编译和使用ffpeg,本文只讲述windows下如何编译ffmpeg的内容。   windows下编译ffmpeg有很多的方法,本文主要用MSYS2的方式来编译。其本质就是模拟

    2024年02月08日
    浏览(37)
  • 音视频剪辑|FFMPEG|windows10下的音视频格式转换,遮挡填充,GIF动图制作,背景音频抽取,替换

    最近对于音视频和图像的处理问题比较感兴趣,但发现很多目前需要的功能要么需要付费但不会过于麻烦,要么比较麻烦,很可能某个功能实现需要安装很多软件 例如,视频转GIF动图,该功能的实现要么使用Photoshop全家桶,要么找在线网站,或者是wps充会员,或者找其它方法

    2024年02月20日
    浏览(59)
  • ffmpeg windows编译及调试完整版

    目录 编译 基础环境准备 依赖环境安装 依赖库安装 X264 fdk-aac X265 ffmpeg-4.3.6 调试 基础项目环境搭建 VS2019项目创建 VS2019项目代码 vs2019配置 VS2019调试 基础环境准备 1、安装vs2019环境 2、安装msys2工具 3、开始菜单启动x86 Native Tools Command Prompt for VS2019 4、进入msys2安装目录找到msy

    2024年02月11日
    浏览(40)
  • windows下msys2编译64位的ffmpeg源码

    目前遇到过两次需求,需要编译ffmpeg源码。网上下载的编译好的源码里面可能不全,很多时候需要自行编译源码。本文介绍自行编译ffmpeg64位源码(32位通过相似的方式为编译成功,不知道原因) 环境: 2023.5.4下载的最新版msys2 ffmpeg 4.3.2源码 windows操作系统 首先需要msys2软件和

    2024年02月03日
    浏览(42)
  • ffmpeg windows环境MinGW+msys2编译so库

    一定要把windows路径的\\\"“换成”/\\\" –prefix 配置安装路径参数 配置交叉编译参数 配置不需要生成相关工具 使用\\\"\\\"+enter可以换行输入多行参数

    2024年02月11日
    浏览(43)
  • Windows安装FFmpeg说明

    下载地址 官网 Download FFmpeg Csdn ffmpeg安装包,ffmpeg-2023-08-28-git-b5273c619d-full-build.7z资源-CSDN文库 解压安装,添加环境变量 命令行输入ffmpeg 安装成功

    2024年02月10日
    浏览(35)
  • windows下载安装FFmpeg

    FFmpeg是一款强大的音视频处理软件,下面介绍如何在windows下下载安装FFmpeg 进入官网: https://ffmpeg.org/download.html, 选择Windows, 然后选择\\\"Windows builds from gyan.dev\\\" 在弹出的界面中找到 release builds , 然后选择一个版本,笔者选择的是最新版本, ffmpeg-release-essentials.zip, 点击即可下载 ` 解

    2024年02月12日
    浏览(41)
  • ffmpeg安装教程(windows版)

    本文介绍ffmpeg详细安装教程(windows版),附加一个使用的小案例 1.官网下载ffmpeg 进入Download FFmpeg网址,点击下载windows版ffmpeg(点击左下第一个绿色的行) 在release builds第一个绿框里面选择一个版本下载。 2.配置 下载完成后解压该压缩包,在bin文件里会有三个exe文件,复制此

    2024年02月07日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包