ffmpeg使用入门

1. ffmpeg是什么:

FFmpeg是一款音视频编解码工具,也是一组音视频编解码开发套件,为开发者提供了丰富的音视频处理调用接口。

FFmpeg源代码编译后会生成三个可执行程序,分别是:ffmpeg、ffplay、ffprobe,

这三个也成为FFmpeg三剑客,各有各的作用。

(1)ffmpeg:

ffmpeg主要是多媒体的编解码工具,具体功能主要包括视频裁剪、去除水印、添加logo、提取封面、提取音频、提取视频等功能。

(2)ffplay:

ffplay提供了音视频显示和播放相关的图像信息,音频的波形信息等。简而言之就是一个播放器。

(3)ffprobe:

ffprobe是多媒体分析工具,比如音视频的参数、媒体容器的参数信息等。也可以分析媒体文件中每个包的长度、包的类型、帧的信息等。

2. ffmpeg编译和安装:

macOS下安装步骤:

(1)下载源码:

git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg

(2)编译:

执行以下三步:

复制代码
./configure --prefix=/usr/local/ffmpeg --enable-debug=3
make -j4
sudo make install

configure支持的配置选项可以通过 ./configure --help 查看,如:

(3)编译产物:

(4)macOS需要安装依赖项:

  1. yasm:
    下载地址:
    http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
    下载完成后解压,执行三步:

    ./configure
    make
    make install

  2. sdl库:
    ffplay的编译需要依赖于sdl库,使用Homebrew安装:

    brew install sdl2

安装sdl之后,重新执行ffmpeg的编译步骤后即可编译出ffplay。

Linux下编译安装 参考:
https://zhuanlan.zhihu.com/p/637822560

相关推荐
m0_687399845 分钟前
写一个Ununtu C++ 程序,调用ffmpeg API, 来判断一个数字电影的视频文件mxf 是不是Jpeg2000?
开发语言·c++·ffmpeg
aqi002 小时前
FFmpeg开发笔记(七十一)使用国产的QPlayer2实现双播放器观看视频
android·ffmpeg·音视频·流媒体
Java患者·6 小时前
【小白】linux安装ffmpeg | java转码 【超详细】
ffmpeg
suifen_6 小时前
RK平台ffmpeg支持硬件编解码
ffmpeg
feiyangqingyun6 小时前
全网唯一/Qt结合ffmpeg实现手机端采集摄像头推流到rtsp或rtmp/可切换前置后置摄像头/指定分辨率帧率
qt·智能手机·ffmpeg
melonbo15 小时前
使用FFmpeg将H.264码流封装为MP4
ffmpeg·音视频·h.264
aqi0017 小时前
FFmpeg开发笔记(七十七)Android的开源音视频剪辑框架RxFFmpeg
android·ffmpeg·音视频·流媒体
慢行的骑兵19 小时前
Android音视频探索之旅 | CMake基础语法 && 创建支持Ffmpeg的Android项目
ffmpeg·音视频
Little_Code1 天前
uniapp 使用ffmpeg播放rtsp
ffmpeg·uni-app·rtsp