哈喽,艾瑞巴蒂,来和大家聊一聊,最近在工作中遇到的一个强大的工具
FFmpeg
这是一个音频处理工具,小编也是最近才对它有了一些了解,让我来告诉大家它是干嘛的~!
FFmpeg是什么?
FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多code都是从头开发的。 FFmpeg在Linux平台下开发,但它同样也可以在其它操作系统环境中编译运行,包括Windows、Mac OS X等。这个项目最早由Fabrice Bellard发起,2004年至2015年间由Michael Niedermayer主要负责维护。许多FFmpeg的开发人员都来自MPlayer项目,而且当前FFmpeg也是放在MPlayer项目组的服务器上。项目的名称来自MPEG视频编码标准,前面的”FF”代表”Fast Forward”。[1] FFmpeg编码库可以使用GPU加速
FFmpeg怎么安装?
- 在官网下载安装包,这里我们选择最新的版本即可,首先解压安装包
tar -xjvf ffmpeg-3.3.4.tar.bz2
- 执行configure配置命令
./configure --enable-shared --prefix=/monchickey/ffmpeg
这里有坑儿
执行configure配置的话,可能会出现错误:
代码语言:javascript复制yasm/nasm not found or too old. Use --disable-yasm for a crippled build.
意思就是 yasm/nasm 包不存在或者很旧,可以使用–disable-yasm禁用这个选项编译或者可以安装一下yasm
- 在官网下载最新的yasm安装包
tar -xvzf yasm-1.3.0.tar.gz
- 编译参数都是默认的,直接安装到系统中即可
安装FFmpeg
- 安装成功之后继续回到ffmpeg解压后的目录,执行下面命令编译并安装
./configure --enable-shared --prefix=/monchickey/ffmpeg
- 执行
make和make install
之后你会看到你的画面上跳动的代码,但是这里你不要慌,可以趁机喝口水什么的。 - 确认安装文件是否存在
make和make install
会把ffmpeg相关执行程序、头文件、lib库安装在/monchickey/ffmpeg/下- cd /monchickey/ffmpeg/查看一下发现有bin,include,lib,share这4个目录: (1) bin是ffmpeg主程序二进制目录 (2) include是C/C 头文件目录 (3) lib是编译好的库文件目录 (4) share是文档目录
- 进入bin,执行命令
./ffmpeg -version
这里有坑儿
查看FFmpeg版本时,可能会出现错误:
libavdevice.so.57: cannot open shared object file: No such file or directory
遇到这个问题不要慌,原因是lib目录未加载到链接到系统库中。
如何解决
- 进入/etc/ld.so.conf.d/目录
- vim /etc/ld.so.conf.d/ffmpeg.conf
- 最后添加 /xxxx/ffmpeg/lib ,xxxx为自己的目录
FFmpeg命令
- 查看文件信息
ffmpeg -i input.mp4
- 转换编码格式
ffmpeg -i [input.file] -c:v libx264 output.mp4
- 转换容器格式
ffmpeg -i input.mp4 -c copy output.webm
- 调整码率
ffmpeg
- 改变分辨率
ffmpeg
- 提取音频
ffmpeg
好了,今天我们的FFmpeg就先介绍到这里了,大家有什么问题欢迎在下方留言。