FFmpeg(一) 简介

FFmpeg 官网

FFmpeg 下载

ffmpeg-release-essentials.7z

ffmpeg-release-full-shared.7z


FFmpeg既是一款音视频编解码工具,同时也是一组音社频编解码开发套件

FFmpeg包含

  • 多种音视频编码
  • 多种协议的流媒体
  • 多种色彩格式转换
  • 多种采样率转换
  • 多种码率转换
  • 多种丰富的插件模块

FFmpeg框架的组成

  • AVFormat 封装模块
  • AVCodec 编解码模块
  • AVFilter 滤镜模块
  • AVDevice
  • AVUtil
  • swresample 音频转换计算模块
  • swscale 视频图像转换计算模块

ffmpeg.exe 是FFmpeg 源代码编译后生成的一个可执行程序,是FFmpeg的编解码工具,作为命令行工具使用。

使用示例

shell 复制代码
ffmpeg -i input.mp4 output.avi  # 获取输入源input.mp4, 转码, 输出到文件output.avi
ffmpeg -i input.mp4 -f avi output.dat

ffmpeg.exe 的工作流程主要是

  1. 解封装 (demuxing)
  2. 解码 (decoding)
  3. 编码 (encoding)
  4. 封装 (muxing)

其需要6个步骤

  1. 读取输入源
  2. 进行音视频解封装
  3. 解码每一帧音视频数据
  4. 编码每一帧音视频数据
  5. 进行音视频重新封装
  6. 转出到目标

FFmpeg 还提供了播放器相关功能avformat,avcodec 可以播放各种媒体文件或者流,ffplay 是主要播放器。

ffprobe 是FFmpeg 中的多媒体分析器,可以得到媒体的信息,比如媒体格式,总时长,复合码率,包长度,包类型,帧信息。

FFmpeg的编码器支持可以通过ffmpeg -encoders查看

FFmpeg的解码器支持可以通过ffmpeg -decoders查看

FFmpeg的封装支持可以通过ffmpeg -muxers查看

FFmpeg的解封装支持可以通过ffmpeg -demuxers查看

其他的可以参考

复制代码
Print help / information / capabilities:
-L                  show license
-h <topic>          show help
-version            show version
-muxers             show available muxers
-demuxers           show available demuxers
-devices            show available devices
-decoders           show available decoders
-encoders           show available encoders
-filters            show available filters
-pix_fmts           show available pixel formats
-layouts            show standard channel layouts
-sample_fmts        show available audio sample formats
相关推荐
hu556679818 小时前
FFmpeg 如何合并字幕
ffmpeg
屋檐上的大修勾18 小时前
使用ffmpeg本地发布rtmp/rtsp直播流
ffmpeg
紫金修道18 小时前
【编解码】基于CPU的高性能 RTSP 多路摄像头抓帧插件:设计与实现详解
ffmpeg
雄哥00718 小时前
Windows系统下FFmpeg的安装与环境配置指南
windows·ffmpeg
ALONE_WORK18 小时前
ffmpeg-rk3568-mpp 硬件加速版本
ffmpeg·视频编解码·mpp·视频推流
紫金修道2 天前
【编解码】RK3588 平台基于 FFmpeg RKMPP 硬解的多路 RTSP 抓帧插件实战
ffmpeg·rkmpp
QMCY_jason2 天前
RK3588 交叉编译ffmpeg提示rockchip_mpp>=1.3.9 错误的问题
ffmpeg
Memory_荒年4 天前
FFmpeg:音视频界的“万能瑞士军刀”
ffmpeg
QJtDK1R5a4 天前
V4L2 vs GStreamer vs FFmpeg:Linux多媒体处理的三个层级
linux·运维·ffmpeg
AI视觉网奇7 天前
webrtc 硬编码
ffmpeg·webrtc