【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 视频滤镜 " 章节 ;

相关推荐
skyjilygao6 分钟前
n8n整合ffmpeg
ffmpeg·视频编辑·n8n
xcLeigh4 小时前
HTML5实现好看的视频播放器(三种风格,附源码)
前端·音视频·html5
别动哪条鱼4 小时前
SDL 函数对各对象缓冲区的影响
网络·数据结构·ffmpeg
骄傲的心别枯萎7 小时前
RV1126 NO.57:ROCKX+RV1126人脸识别推流项目之读取人脸图片并把特征值保存到sqlite3数据库
数据库·opencv·计算机视觉·sqlite·音视频·rv1126
好游科技7 小时前
IM即时通讯系统:安全可控、功能全面的社交解决方案全解析
安全·音视频·webrtc·im即时通讯·私有化部署im即时通讯·社交app
EasyDSS8 小时前
视频直播点播平台EasyDSS构建高并发、低延迟的远程教学直播新模式
音视频
GIOTTO情8 小时前
多模态舆情监测技术深度解析:Infoseek 如何实现 AI 造假与短视频舆情的精准捕捉?
人工智能·音视频
音视频牛哥8 小时前
C# 开发工业级 RTSP/RTMP 播放器实战:基于 SmartMediakit 的低延迟与高可靠性设计
音视频·rtsp播放器·rtmp播放器·windows rtsp播放器·windows rtmp播放器·c# rtsp播放器·c# rtmp播放器
JellyDDD8 小时前
【悬赏】Android WebRTC 数字人项目回声问题排查(AEC / AudioMode)
音视频·webrtc
于是我说9 小时前
如何判断一个视频到底是真实 MP4 直链,还是流媒体M3U8
网络·音视频