ffmpeg(四):滤镜命令

FFmpeg 的滤镜命令是用于音视频处理中的强大工具,可以完成剪裁、缩放、加水印、调色、合成、旋转、模糊、叠加字幕等复杂的操作。其核心语法格式一般如下:

ffmpeg -i input.mp4 -vf "滤镜参数" output.mp4

或者带音频滤镜:

ffmpeg -i input.mp4 -vf "视频滤镜" -af "音频滤镜" output.mp4

常见视频滤镜(-vf

滤镜名称功能说明示例
scale缩放视频尺寸-vf "scale=1280:720"
crop裁剪视频区域-vf "crop=640:360:0:0"
drawtext添加文字水印-vf "drawtext=text='Hello':x=10:y=10:fontsize=24:fontcolor=white"
overlay叠加视频/图片-i bg.mp4 -i logo.png -filter_complex "overlay=10:10"
hflip / vflip水平/垂直翻转-vf "hflip"
transpose旋转90度(1 顺时针)-vf "transpose=1"
eq调整亮度/对比度/饱和度-vf "eq=brightness=0.06:contrast=1.5:saturation=1.2"
fps调整帧率-vf "fps=30"
setpts设置时间戳(变速)-vf "setpts=0.5*PTS"(加快2倍)
fade添加淡入淡出效果-vf "fade=t=in:st=0:d=3"
drawbox画框-vf "drawbox=x=100:y=100:w=200:h=100:color=red@0.5"
lut调色 LUT 滤镜-vf "lut=y='val*1.5'"

常见音频滤镜(-af

滤镜名称功能说明示例
volume调整音量-af "volume=1.5"(音量放大1.5倍)
aecho回声效果-af "aecho=0.8:0.9:1000:0.3"
atempo语速变快/变慢-af "atempo=2.0"(加快2倍)
highpass高频滤波-af "highpass=f=2000"
lowpass低频滤波-af "lowpass=f=500"
pan声道重混`-af "pan=stereo

示例

视频相关

缩放视频(保持宽高比)

# -1 表示自动计算高度以保持宽高比。
ffmpeg -i input.mp4 -vf "scale=1280:-1" output.mp4

裁剪视频

# 从 (100,50) 开始,裁剪大小为 640x360。
ffmpeg -i input.mp4 -vf "crop=640:360:100:50" output.mp4

添加文字水印

# 需要安装字体支持,或者加参数 :fontfile=/path/to/font.ttf
ffmpeg -i input.mp4 -vf "drawtext=text='Hello World':x=10:y=10:fontsize=24:fontcolor=white" output.mp4

添加图片水印

ffmpeg -i input.mp4 -i logo.png -filter_complex "overlay=10:10" output.mp4

模糊视频区域(高斯模糊)

ffmpeg -i input.mp4 -vf "boxblur=10:1" output.mp4

或仅模糊局部区域:

ffmpeg -i input.mp4 -filter_complex "[0:v]crop=200:200:100:100,boxblur=10:1[blur];[0:v][blur] overlay=100:100" output.mp4

视频旋转(顺时针90度)

ffmpeg -i input.mp4 -vf "transpose=1" output.mp4

设置帧率为30fps

ffmpeg -i input.mp4 -vf "fps=30" output.mp4

视频加速2倍播放

ffmpeg -i input.mp4 -vf "setpts=0.5*PTS" output.mp4

视频减速(慢放)

ffmpeg -i input.mp4 -vf "setpts=2.0*PTS" output.mp4

视频画中画(PIP)

# 把 small.mp4 缩放后叠加在右下角。
ffmpeg -i main.mp4 -i small.mp4 -filter_complex "[1:v]scale=320:240[small];[0:v][small] overlay=W-w-10:H-h-10" output.mp4

音频相关

音量调大1.5倍

ffmpeg -i input.mp4 -af "volume=1.5" output.mp4

加快音频播放速度(语速)

# atempo 只能在 0.5 到 2.0 之间,需多次叠加实现更大变化
ffmpeg -i input.mp4 -af "atempo=2.0" output.mp4

添加回声效果

ffmpeg -i input.mp4 -af "aecho=0.8:0.9:1000:0.3" output.mp4

混音或改变声道

# 将左声道复制到右声道,适用于单声道转双声道。
ffmpeg -i input.mp4 -af "pan=stereo|c0=c0|c1=c0" output.mp4

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/bicheng/84132.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

408考研逐题详解:2009年第33题

2009年第33题 在 OSI 参考模型中,自下而上第一个提供端到端服务的层次是( ) A. 数据链路层 \qquad B. 传输层 \qquad C. 会话层 \qquad D.应用层 解析 本题主要考查 OSI 参考模型各层的核心功能、端到端服务的定义。 OSI 参考模型&am…

CentOS 7.9安装Nginx1.24.0时报 checking for LuaJIT 2.x ... not found

Nginx1.24编译时,报LuaJIT2.x错误, configuring additional modules adding module in /www/server/nginx/src/ngx_devel_kit ngx_devel_kit was configured adding module in /www/server/nginx/src/lua_nginx_module checking for LuaJIT 2.x ... not…

自制喜悦字贴

一、想法 据说,把“喜悦”两个字挂在家里显眼的地方,时常看到,就能心情愉悦。刚好最近在学习前端flex布局,用代码实现,导出图片,打印出来,帖在家里,非常nice。现在分享给大家。 二…

每日八股文6.3

每日八股-6.3 Mysql1.COUNT 作用于主键列和非主键列时,结果会有不同吗?2.MySQL 中的内连接(INNER JOIN)和外连接(OUTER JOIN)有什么主要的区别?3.能详细描述一下 MySQL 执行一条查询 SQL 语句的…

量化面试绿皮书:6. 烧绳子计时

文中内容仅限技术学习与代码实践参考,市场存在不确定性,技术分析需谨慎验证,不构成任何投资建议。 6. 烧绳子计时 你有两根绳子,每根绳子燃烧需要1小时。但是任何一根绳子在不同点都有不同的密度,所以不能保证绳子内不…

2-深度学习挖短线股1

选短线个股的流程 (1)数据预处理,根据短线个股筛选标准,给个股日线数据打标。 (2)模型训练,针对每只股票,训练得到分类模型。 (3)结果预测,根据训…

【数据分析】探索婴儿年龄变化对微生物群落(呼吸道病毒和细菌病原体)结构的影响

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍1. 混合效应逻辑回归模型2. 随机森林模型3. Maaslin2 分析加载R包数据下载导入数据数据预处理混合效应逻辑回归模型分析微生物群落结构随年龄的变化随机森林模型预测病原体定植Maas…

实战:子组件获取父组件订单信息

最佳实践建议 优先使用 props:适合父子组件直接通信,数据流向清晰复杂场景用 eventBus:跨组件通信推荐使用 mitt 库避免过度使用 $parent:会导致组件耦合度高,难以维护provide/inject 适用于跨层级:如主题…

Spring Security深度解析:构建企业级安全框架

Spring Security深度解析:构建企业级安全框架 本文将深入探讨Spring Security安全框架的核心原理、架构设计和实际应用,帮助开发者全面掌握企业级应用安全防护技术。 目录 Spring Security概述核心架构与原理认证机制详解授权机制详解核心组件分析配置与集成高级特性应用安全…

计算矩阵A和B的乘积

根据矩阵乘法规则,编程计算矩阵的乘积。函数fix_prod_ele()是基本方法编写,函数fix_prod_opt()是优化方法编写。 程序代码 #define N 3 #define M 4 typedef int fix_matrix1[N][M]; typedef int fix_matrix2[M][N]; int fix_prod_ele(f…

《Brief Bioinform》: 鼠脑单细胞与Stereo-seq数据整合算法评估

一、写在前面 基因捕获效率、分辨率一直是空间转录组细胞类型识别的拦路虎,许多算法能够整合单细胞(single-cell, sc)或单细胞核(single-nuclear, sn)数据与空间转录组数据,从而帮助空转数据的细胞类型注释。此前我们介绍过近年新出炉的Stereo-seq平台&…

camera功能真的那么难用吗

背景 Android开发工作过程中,经常需要用到camera相关能力,比如:人脸识别,ai识别,拍照预览,摄像头录制等等需求。都需要使用到camera,且需要拿到camera的预览数据。但是每次开发这块代码都比较繁…

USART 串口通信全解析:原理、结构与代码实战

文章目录 USARTUSART简介USART框图USART基本结构数据帧起始位侦测数据采样波特率发生器串口发送数据 主要代码串口接收数据与发送数据主要代码 USART USART简介 一、USART 的全称与基本定义 英文全称 USART:Universal Synchronous Asynchronous Receiver Transmi…

LeetCode 152. 乘积最大子数组 - 动态规划解法详解

文章目录 问题描述解题思路动态规划状态定义状态转移方程完整代码实现复杂度分析示例解析关键点说明总结问题描述 给定一个整数数组 nums,请找出数组中乘积最大的连续子数组(该子数组中至少包含一个数字),并返回该子数组对应的乘积。 示例: 输入: [2,3,-2,4] 输出: 6 解…

Python: 操作 Excel折叠

💡Python 操作 Excel 折叠(分组)功能详解(openpyxl & xlsxwriter 双方案) 在处理 Excel 报表或数据分析时,我们常常希望通过 折叠(分组)功能 来提升表格的可读性和组织性。本文将详细介绍如何使用 Python 中的两个主流 Excel 操作库 —— openpyxl 和 xlsxwriter …

28、元组的遍历

const_cast 只能用于指针或引用类型&#xff0c;而不能用于基本类型如 int。 在的代码中&#xff0c;试图将 i 转换为 const_cast<int>(i)&#xff0c;这是不合法的。 可以使用模板函数来获取元组中的元素&#xff0c;而不是使用 const_cast。以下是修正后的代码&#x…

sendDefaultImpl call timeout(rocketmq)

rocketmq 连接异常 senddefaultimpl call timeout-腾讯云开发者社区-腾讯云 第一种情况&#xff1a; 修改broker 的配置如下&#xff0c;注意brokerIP1 这个配置必须有&#xff0c;不然 rocketmq-console 显示依然是内网地址 caused by: org.apache.rocketmq.remoting.excep…

【仿生机器人】仿生机器人智能架构:从感知到个性的完整设计

仿生机器人智能架构&#xff1a;从感知到个性的完整设计 仿生机器人不仅需要模拟人类的外表&#xff0c;更需要具备类人的认知、情感和个性特征。本研究提出了一个综合性的软件架构&#xff0c;实现了从环境感知到情感生成、从实时交互到人格塑造的完整智能系统。该架构突破了…

Spring Boot微服务架构(十一):独立部署是否抛弃了架构优势?

Spring Boot 的独立部署&#xff08;即打包为可执行 JAR/WAR 文件&#xff09;本身并不会直接丧失架构优势&#xff0c;但其是否体现架构价值取决于具体应用场景和设计选择。以下是关键分析&#xff1a; 一、独立部署与架构优势的关系 内嵌容器的优势保留 Spring Boot 独立部署…

HBuilderX安装(uni-app和小程序开发)

下载HBuilderX 访问官方网站&#xff1a;https://www.dcloud.io/hbuilderx.html 根据您的操作系统选择合适版本&#xff1a; Windows版&#xff08;推荐下载标准版&#xff09; Windows系统安装步骤 运行安装程序&#xff1a; 双击下载的.exe安装文件 如果出现安全提示&…