Mac下ffmpeg的安装和使用 2023-07-04 学习笔记,分享信息 暂无评论 344 次阅读 ### 一. Homebrew安装 此方法安装需要耐心,也许会很慢!好处是功能全面。 首先用homebrew安装各种编码器 ```bash brew install automake fdk-aac git lame libass libtool libvorbis libvpx opus sdl shtool texi2html theora wget x264 x265 xvid nasm ``` 如果有安装过老版本[ffmpeg](https://so.csdn.net/so/search?q=ffmpeg&spm=1001.2101.3001.7020)的,可能需要更新(比如我在安装中发现以下几个依赖在我安装老版本的ffmpeg的时候安装过了,但是需要更新,否则后面运行ffmpeg会报错) ```bash brew upgrade x265 libvpx libtool automake ``` 最后带依赖安装ffmpeg ```bash brew install ffmpeg ``` 最后查看版本: ```bash ffmpeg -version ``` *** ### 二. conda安装 需要先安装conda,参考[Mac OS下Python虚拟环境管理工具conda的安装和使用](https://mtom.top/archives/534400/) 安装命令 ```bash conda install ffmpeg -c conda-forge ``` 最后查看版本: ```bash ffmpeg -version ``` conda安装的不是最新版本,使用过程中发现缺少有些模块,如X265 *** ### 三. 通过官网安装FFmpeg 1. 进入官网[Download FFmpeg](https://www.ffmpeg.org/download.html#build-windows) 2. 出现如下页面: ![在这里插入图片描述](https://imgs.menet.top/imgs/1c6e5f1e3fb8470ea320c3965c93919b.png) 3. 点击苹果标识,进入如下页面: ![在这里插入图片描述](https://imgs.menet.top/imgs/2b546053434043d8a9ed0167cf2f1784.png) 4. 点击红框内按钮,开始下载压缩包; 5. 下载完成后解压,得到如下图所示的图标: ![在这里插入图片描述](https://imgs.menet.top/imgs/iShot_2023-07-04_16.04.35.png) 6. 把`ffmpeg`移到`/usr/local/bin/ffmpeg` 7. 终端界面,可运行ffmpeg命令; ```bash ffmpeg ``` ![mac截图](https://imgs.menet.top/imgs/iShot_2023-07-04_15.57.56.png "mac截图") *** ### 四. FFmpeg源码安装 #### FFmpeg源码获取 使用如下命令获取ffmpeg的源码: ```bash git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg ``` #### ffmpeg编译 使用如下命令指定安装目录: ```bash cd ffmpeg ``` ```bash ./configure --prefix=/usr/local/ffmpeg --enable-debug=3 --enable-shared --disable-static --disable-x86asm ``` 使用prefix参数实现安装目录的指定,通常安装在本地/usr/local目录下。 由于之后有调试源码的需求,所以打开debug模式,将–enable-debug设为3. 这条命令会关闭生成静态库,打开生成动态库。 最后会关闭x86asm,_这是一个在ubuntu还有mac下都必须做的_。 #### 使用如下命令实现ffmpeg的编译: ```bash make -j 4 ``` 这条命令会调用4个核心并行编译,可以大大提高编译的速度 #### 使用如下命令进行安装: ```bash make install ``` #### 完成了ffmpeg的安装后,接下来进入/usr/local/ffepeg内查看: ![在这里插入图片描述](https://imgs.menet.top/imgs/20210519231950749.png) 可以看见ffmpeg安装完成后主要生成上面提到的4个路径。 > bin:存放ffmpeg所有的命令工具 > include:存放ffmpeg所有的头文件 > lib:存放ffmpeg生成的动态库或者静态库 > share:存放ffmpeg相关的文档和例子 ### bin目录 进入bin目录下存在三个命令工具,依次是ffmpeg、ffplay、ffprode > ffmpeg:可以进行推流、音视频的处理 > ffplay:一个播放器,可以进行拉流、播放本地的音视频文件 > ffprobe:用于侦测多媒体文件,例如一些格式以及基本信息 ### include目录 进入include文件,存放所有的ffmpeg头文件,之后进行ffmpeg二次开发使用头文件时进入此目录下寻找,每一个子目录是一个模块。 ![在这里插入图片描述](https://imgs.menet.top/imgs/20210519232210514.png) > libavcodec:编解码 > libavdevice:管理设备 > libavfilter:各种滤镜效果、特效 > libavformat:多媒体格式处理 > libavutil:一些基本的工具 > libswresample:音频重采样 > libswscale:视频缩放等一些处理 ### lib目录 进入lib文件,存放所有生成的ffmpeg动态库/静态库。 ![在这里插入图片描述](https://imgs.menet.top/imgs/20210519232225746-1.png) 以libavcodec为例,libavcodec.so.59.0.100是真正的库,另外两个libavcodec.so.59和libavcodec.so是连接符,使用时根据自己的喜好使用。 如果在移动端使用时也可以生成一个总的静态文件(a文件)。 ### share目录 进入share目录下,主要是存在一些ffmpeg文档,例如man文档。 ### 使用命令打开配置文件: ``` sudo nano ~/.bash_profile ``` 在末尾加入这条语句,即ffmpeg的bin目录: ``` export PATH=$PATH:/usr/local/ffmpeg/bin ``` 然后保存退出。 再执行下面命令让刚配置的环境变量生效: ``` source ~/.bash_profile ``` 然后输入下面命令,测试是否成功将ffmpeg加入到系统环境中: ``` ffmpeg ``` ![mac截图](https://imgs.menet.top/imgs/iShot_2023-07-04_15.57.56.png "mac截图") 标签: Mac, conda, ffmpeg, brew 本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。