window下编译ffmpeg--mys2下安装对应库编译ffmpeg

        在window下代建编译环境的情况下,我们开始着手下载编译ffmpeg以及相对应的库,我将我本人安装的过程以及碰到的问题进行一个记录,方便日后查看以及与在同在音视频学习路上的同志一个分享。

        还没有安装好编译环境的可以参考我的另一篇介绍搭建编译环境的博客:

window下编译ffmpeg--安装msys2:https://blog.csdn.net/tanziliang98/article/details/122401214

一:准备工作

1:重命名link.exe 

        重命名 msys64/usr/bin/link.exe 为 msys64/usr/bin/link.bak , 避免和MSVC 的link.exe抵

触。

2.启动命令⾏窗⼝,在窗⼝中输⼊:

#进⼊msys2安装⽬录 
D: 
cd D:\msys64
 #如果要打开msys2的mingw64窗⼝ 
msys2_shell.cmd -mingw64 6
#如果要打开msys2的msys窗⼝ 7
 #msys2_shell.cmd

3.下载和安装YASM

pacman -S yasm

4.检查编译环境⼯具

mingw64的shell窗⼝输⼊:

which cl link yasm cpp

看返回结果,没有no的结果⼀般就没问题。

5.修改⽀持中⽂显示

        窗⼝右键->Options->Text,然后locale选择:zh_CN,Character set 选择 UTF-8。

6.安装nasm

pacman -S nasm

二:编译第三方库

1:下载编译x64

1.1.MinGW-w64版本下载x264

        将下载下的放置于/home/96358/ffmpeg,把第三⽅库编译的库⽂件放在 /home/96358/ffmpeg/build

git clone https://gitee.com/mirrors_addons/x264.git

        注意:在下载库文件时,可能因为网站会出现下载不了的现象,这个时候考虑将https更换成git

git clone git://gitee.com/mirrors_addons/x264.git

1.2:对x264配置安装

        cd 进入x264目录:

cd x264
./configure --prefix=/home/96358/ffmpeg/build/libx264 --host=x86_64-w64-mingw32 --enable-static --extra-ldflags=-Wl,--output-def= libx264.def
make
make install

1.3:生成libx64

       上⾯编译出来的结果没有包含lib⽂件,需要⾃⼰⼿⼯⽣成。configure时我们⽣成了 libx264.def 此时就派上⽤场。

cp ./libx264.def /home/96358/ffmpeg/build/libx264/lib/
cd /home/96358/ffmpeg/build/libx264/lib
#若要⽣成64位lib⽂件则输⼊如下命令:
lib /machine:X64 /def:libx264.def 
#若要⽣成32位lib⽂件则输⼊如下命令:
#lib /machine:i386 /def:libx264.def

          即得到 libx264 .lib

2:下载编译fdk-acc

2.1:下载fdk-acc

git clone --depth 1 https://gitee.com/mirrors/fdk-aac.git

注意:

        使用该命令访问不到网页时,可以尝试将https改成git。

2.2:编译、安装fdk-acc

        进入fdk-acc目录

cd fdk-acc
#配置
./autogen.sh
./configure --prefix=/home/96358/ffmpeg/build/libfdk-aac --enable-static --enable-shared
#编译
make -j4
#安装
make install

        进入对应目录查看是否安装成功:/home/96358/ffmpeg/build/

3:下载编译MP3(libmp3lame)

3.1:下载

git clone --depth 1 https://gitee.com/hqiu/lame.git

3.2:进入目录配置安装

cd lame
./configure --prefix=/home/96358/ffmpeg//build/libmp3lame --disable-shared --disable- frontend --enable-static
make
make install

4:下载编译libvpx

4.1:下载

git clone --depth 1 https://github.com/webmproject/libvpx.git

4.3:配置编译安装 

cd libvpx
./configure --prefix=/home/96358/ffmpeg/build/libvpx --disable-examples --disable-unit-tests --enable-vp9-highbitdepth --as=yasm
make -j4 
make install

5:下载编译ffmpeg

5.1:下载ffmpeg

#码云连接
git clone https://gitee.com/mirrors/ffmpeg.git
cd ffmpeg
#查看版本
git branch -a
#选择4.2版本
git checkout remotes/origin/release/4.2

 5.2:编译ffmpeg

         创建⼀个build.sh

        将下载好的ffmpeg与x264放在⼀个⽬录下,本⼈是/home/96358/ffmpeg。

        build_ffmpeg.sh内容是:
./configure \
	 --prefix=/home/96358/ffmpeg/build/ffmepg-4.2 \
	 --arch=x86_64 \
	 --enable-shared \
	 --enable-gpl \
	 --enable-libfdk-aac \
	 --enable-nonfree \
	 --enable-libvpx \
	 --enable-libx264 \
	 --enable-libmp3lame \
	 --extra-cflags="-I/home/96358/ffmpeg/build/libfdk-aac/include" \
	 --extra-ldflags="-L/home/96358/ffmpeg/build/libfdk-aac/lib" \
	 --extra-cflags="-I/home/96358/ffmpeg/build/libvpx/include" \
	 --extra-ldflags="-L/home/96358/ffmpeg/build/libvpx/lib" \
	 --extra-cflags="-I/home/96358/ffmpeg/build/libx264/include" \
	 --extra-ldflags="-L/home/96358/ffmpeg/build/libx264/lib" \
     --extra-cflags="-I/home/96358/ffmpeg/build/libmp3lame/include" \
	 --extra-ldflags="-L/home/96358/ffmpeg/build/libmp3lame/lib"

        在下载好的ffmpeg目录执行脚本配置:

sh build_ffmpeg.sh

        注意:在执行这里是可能会由于脚本问题、文件不存在出现错误:

        再次脚本符号之间连接是否正确,每个文件在对应的目录是否存在。

        正确配置后:

 5.3:编译安装

make
make install

        安装之后进入ffmpeg的bin目录查看:

         如果安装成功,拷贝一个MP4文件到bin目录,执行:

ffplay.exe believe.mp4 -x 480 -y 500

         可以得到:

        mp4文件正常播放即表示ffmpeg以安装完毕。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值