【FFmpeg】Filter 过滤器 ① ( FFmpeg 过滤器简介 | 过滤器概念 | 过滤器用法 | 过滤器工作流程 | 过滤器文档 | 过滤器分类 )

文章目录

  • [一、FFmpeg 过滤器 Filter 简介](#一、FFmpeg 过滤器 Filter 简介)
    • [1、FFmpeg 过滤器概念](#1、FFmpeg 过滤器概念)
    • [2、FFmpeg 过滤器用法](#2、FFmpeg 过滤器用法)
    • [3、FFmpeg 过滤器工作流程](#3、FFmpeg 过滤器工作流程)
    • [4、FFmpeg 过滤器文档](#4、FFmpeg 过滤器文档)
  • [二、FFmpeg 过滤器 分类](#二、FFmpeg 过滤器 分类)
    • [1、过滤器分类 - 根据处理数据类型分类](#1、过滤器分类 - 根据处理数据类型分类)
    • [2、过滤器分类 - 根据编码器位置分类](#2、过滤器分类 - 根据编码器位置分类)
    • [3、过滤器分类 - 根据功能分类](#3、过滤器分类 - 根据功能分类)

FFmpeg 相关文档 :

一、FFmpeg 过滤器 Filter 简介


1、FFmpeg 过滤器概念

FFmpeg 过滤器 又称为 " 滤镜 " , 是 FFmpeg 的重要的组件 , 用于 处理音视频流 和 处理多媒体操作 ;

FFmpeg 过滤器 是一种功能强大的工具 , 可以在 FFmpeg 输入 和 输出 之间 进行一系列的转换和处理 , 如 :

  • 裁剪
  • 旋转
  • 缩放
  • 变速
  • 添加水印

FFmpeg 过滤器 可以多个一起叠加使用 , 使用不同的 过滤器组合 和 调节参数 , 可以 处理复杂的 音视频 操作 , 如 :

  • 音视频转码
  • 音视频剪辑

多个 过滤器 一起使用 , 又称为 " 过滤器链 " , 或 " 滤镜链 " ;

参考之前的博客 , 有简单使用过 过滤器 / 滤镜 :

2、FFmpeg 过滤器用法

在 FFmpeg 命令行 中 , 将 过滤器 名称 作为参数进行传递 ,

  • 通过 命令行参数 -vf 设置视频过滤器
  • 通过 命令行参数 -af 设置 音频过滤器 ;

过滤器链 : 多个过滤器 可以链式组合 , 形成一个 过滤器链 Filter Chain , 同时实现多个过滤器的效果 ;

过滤器图 : 通过 命令行参数 filter_complex 选项 , 可以 创建一个 包含 多个输入 和 输出 的 复杂 过滤器图 Filter Graph ;

  • 可实现 将 多个音视频流 通过 不同的 过滤器 进行处理 ;

3、FFmpeg 过滤器工作流程

FFmpeg 过滤器工作流程 :

  • 输入 : 过滤器 接收 一个 或 多个 音视频输入流 ;
  • 处理 : 过滤器 对 输入流 进行各种操作 , 如 : 裁剪 , 混音 等操作 ;
  • 输出 : 过滤器 处理完数据后 , 输出 一个 或 多个 处理过的 输出流 ;

4、FFmpeg 过滤器文档

FFmpeg 文档主页是 https://ffmpeg.org/documentation.html

点击该页面的文档索引 , 可以跳转到对应的文档中 ;

点击 " 组件文档 " 下的 " 过滤器 " 选项 ,

可跳转到 过滤器文档页面 https://ffmpeg.org/ffmpeg-filters.html

二、FFmpeg 过滤器 分类


1、过滤器分类 - 根据处理数据类型分类

根据处理数据类型 , 可以将 过滤器 分为如下三类 :

  • 音频过滤器 Filter : 用于处理音频数据 , 如 : 音频裁剪 , 多路音频混音 , 音频变速 , 音频变调 等 ;
  • 视频过滤器 Filter : 用于处理视频数据 , 如 : 视频裁剪 , 视频缩放 , 视频旋转 , 视频叠加 等 ;
  • 字幕过滤器 Filter : 用于处理字幕数据 , 如 : 修改字幕 , 字幕翻译 等 ;

2、过滤器分类 - 根据编码器位置分类

根据 过滤器 工作时间 与编解码器工作时间 的 前后位置 , 可以将 过滤器 分为如下三类 :

  • Prefilters : 在 编码之前 使用的过滤器 , 主要进行 数据 预处理 ;
  • Intrafilters : 在 编码时 使用的过滤器 , 是 视频编解码器 的组成部分 ;
  • Postfilters : 在 解码后 使用的过滤器 , 用于 数据 的 后处理 ;

3、过滤器分类 - 根据功能分类

根据过滤器的功能 , 可以将过滤器分为很多类型 :

  • scale : 视频缩放 过滤器 ;
  • overlay : 视频叠加 过滤器 ;
  • crop : 视频裁剪 过滤器 ;
  • trim : 视频截取 过滤器 ;
  • rotate : 视频旋转 过滤器 ;
  • movie : 视频加载 过滤器 ;

更多的 视频过滤器 参考 FFmpeg 过滤器文档 的 " 11 视频滤镜 " 章节 ;

相关推荐
岁月小龙7 小时前
如何让ffmpeg运行时从当前目录加载库,而不是从/lib64
ffmpeg·origin·ffprobe·rpath
我喜欢就喜欢9 小时前
基于qt vs下的视频播放
开发语言·qt·音视频
安步当歌10 小时前
【WebRTC】视频采集模块中各个类的简单分析
音视频·webrtc·视频编解码·video-codec
EasyGBS10 小时前
国标GB28181公网直播EasyGBS国标GB28181软件管理解决方案
大数据·网络·音视频·媒体·视频监控·gb28181
Johnstons13 小时前
AnaTraf | 网络性能监控系统保障音视频质量的秘籍
网络·音视频·网络流量监控·网络流量分析·npmd
lrlianmengba13 小时前
推荐一款非常好用的视频编辑软件:Movavi Video Editor Plus
音视频
SZ17011023113 小时前
ffplay 实现视频流中音频的延迟
音视频·延迟
LNTON羚通15 小时前
CPU算法分析LiteAIServer视频智能分析平台视频智能分析:抖动、过亮与过暗检测技术
大数据·目标检测·音视频·视频监控
MediaTea16 小时前
Pr 视频过渡:沉浸式视频 - VR 光线
音视频·vr
几何心凉21 小时前
视频自动播放被浏览器阻止及其解决方案
音视频