人活在世界上,快乐和痛苦本就分不清,所以我只求它货真价实。

小伙伴们端午安康啊,最近在学习音视频方面的知识点,所以就把自己所学的知识整理一下,当作自己的笔记,每当忘记的时候就来瞅一眼。请大家关注后续音视频相关的Blog。


目录

  • 1. 什么的ffmpeg?
  • 2. ffmpeg的用处
  • 3. ffmpeg安装与编译
  • 3.1 Mac中一键安装
  • 3.2 通过clone ffmpeg库进行编译安装


1. 什么的ffmpeg?

ffmpeg 是用C语言开发的,是一个用于音视频编解码的多媒体开源库,它为开发者提供了丰富了音视频处理的调用接口。ffmpeg官网

2. ffmpeg的用处

  • 可以运行在Linux、Mac、Windows
  • 是一个优秀的多媒体库,可用于多媒体格式的转换
  • 能够解码、编码、转码、复用、解复用、过滤音视频数据

3. ffmpeg安装与编译

3.1 Mac中一键安装

如果使用的是 Mac 电脑,可以输入以下命令安装 ffmpeg

brew install ffmpeg

安装完成之后在终端输入ffmpeg,会有以下内容,ffmpeg的安装路径为/usr/local/Cellar/ffmpeg/5.0.1

ffmpeg android编译 win10_ffmpeg编译与安装


然后查看ffmpeg中的安装内容

cd /usr/local/Cellar/ffmpeg/5.0.1
cd include
cd lib

ffmpeg android编译 win10_ffmpeg使用_02

  1. include目录下存放的是头文件,
  • libavformat:对多媒体格式对解析和封装、
  • libavutil:常用的工具
  • libavcodec:编解码
  • libavdevice:音视频采集、桌面采集
  • libavfilter:滤镜
  • libswresample:音频采样
  1. lib目录下存放的是动态库
    扩展名为.dylib 为Mac平台生成的动态库

3.2 通过clone ffmpeg库进行编译安装

  1. 第一步:clone
    ffmpeg 源码地址:https://github.com/FFmpeg/FFmpeg
git clone git@github.com:FFmpeg/FFmpeg.git

ffmpeg android编译 win10_ffmpeg_03


如果想查看 ffmpeg提供的一些工具,可以使用以下命令

./configure --help
./configure --list-decoders
  1. 第二步:生成配置文件
    在终端输入以下内容,可选择性的输入
ffmpeg git:(master) ./configure --prefix=/usr/local/Cellar/ffmpeg/5.0 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags= --enable-nonfree --enable-libfdk-aac --enable-ffplay --enable-gpl --enable-libaom --enable-libwebp --enable-libx264 --enable-libx265 --disable-indev=jack --enable-videotoolbox --enable-filter=delogo --enable-debug --disable-optimizations --enable-libspeex --enable-hardcoded-tables

ffmpeg android编译 win10_Mac_04


如果这一步出现了报错,例如:nasm/yasm not found or too old. Use --disable-x86asm for a crippled build.

ffmpeg android编译 win10_Mac_05


解决方法:brew install yasm,之后再重新生成配置文件即可

  1. 第三步:编译与安装
make && make install

ffmpeg android编译 win10_ffmpeg_06


到此,ffmpeg编译与安装就大功告成啦。