滤镜相关命令

FFmpeg中关于滤镜命令有很多种。比如在视频中加入/删除水印、对视频做反转等等都属于滤镜。

FFmpeg滤镜处理流程

解码后的数据帧 ---过滤处理---> 过滤后的数据帧 ---编码---->编码后数据

也就是说,滤镜操作是在解码后的数据帧基础上进行操作。

1. 视频的裁剪

对视频in.mov进行裁剪,宽减少200,高减少200,然后保存为out.mp4。

ffmpeg -i in.mov -vf crop=in_w-200:in_h-200 -c:v libx264 -c:a copy out.mp4

-vf:指定视频滤镜

crop是滤镜名字,等号后面是滤镜参数

in_w和in_h表示原视频的宽和高 还可以指定X/Y 不写默认是原视频的中心点

-c:v指定视频编码器

-c:a指定音频编码器

copy就表示不做处理

2. 视频的缩放

对视频out.mp4宽高等比例缩小一倍。

ffmpeg -i out.mp4 -vf scale=iw/2:-1 scale.mp4

-vf:指定视频滤镜

scale是滤镜名字 等号后面是滤镜参数,iw/2表示宽缩小一倍,-1表示高等比例缩小。

3. 添加图片水印

将图片logo.png作为水印添加到out.mp4视频中,水印尺寸为86x62,在视频中的坐标位置是(500,300)

ffmpeg -i out.mp4 -vf "movie=logo.png,scale=86:62[mask];[in] [mask] overlay=500:300 [out]" mask.mp4

-vf:指定视频滤镜,movie是滤镜名字,后面是水印图片的路径

scale=86:62[mask]是水印显示的尺寸

overlay=500:300是水印在视频中的坐标。

4.删除水印

ffmpeg -i mask.mp4 -vf delogo=x=500:y=300:w=86:h=62 delmask.mp4

注意:水印删除后水印位置会变模糊

FFmpeg常用命令学习笔记(八)滤镜相关命令的更多相关文章

  1. rails学习笔记: rake db 相关命令

    rails学习笔记: rake db 命令行 rake db:*****script/generate model task name:string priority:integer script/g ...

  2. linux命令学习笔记(1):ls命令

    ls命令是linux下最常用的命令.ls命令就是list的缩写缺省下ls用来打印出当前目录的清单 如果ls指定其他目录那么就会显示指定目录里的文件及文件夹清单. 通过ls 命令不仅可以查 看li ...

  3. linux命令学习笔记(12):more命令

    more命令,功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上. more会以一页一页的显示方便 使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就 ...

  4. linux学习笔记-3.文件相关命令

    1.进入到用户根目录 cd ~ 或者 cdcd ~hadoop回到原来路径cd - 2.查看文件详情 stat a.txt 3.移动 mv a.txt /ect/改名mv b.txt a.txt移动并 ...

  5. linux命令学习笔记(11):nl命令

    nl命令在linux系统中用来计算文件中行号.nl 可以将输出的文件内容自动的加上行号!其默认的结果与 等等的功能. .命令格式: nl [选项]... [文件]... .命令参数: -b :指定行号 ...

  6. linux命令学习笔记-kill和killall命令详解

    *杀死进程最安全的方法是单纯使用kill命令,不加修饰符,不带标志. 首先使用ps -ef命令确定要杀死进程的PID,然后输入以下命令: # kill -pid 注释:标准的kill命令通常都能达到目 ...

  7. Linux命令学习笔记目录

    Linux命令学习笔记目录 最近正在使用,linux,顺便将用到的命令整理了一下. 一. 文件目录操作命令: 0.linux命令学习笔记(0):man 命令 1.linux命令学习笔记(1):ls命令 ...

  8. FFmpeg常用命令学习笔记(一)基本信息查询命令

    笔者才开始学习音视频开发,FFmpeg学习笔记系列主要是从慕课网李超老师的FFmpeg音视频核心技术精讲与实战课程学习的心得体会. FFmpeg音视频核心技术精讲与实战:https://coding. ...

  9. mongodb常用命令学习笔记

    mongodb常用命令学习笔记 创建数据库 use DATABASE_NAME eg: use users; 如果数据库不存在,则创建数据库,否则切换到指定数据库.要显示刚刚创建的数据库,需要向数据库 ...

随机推荐

  1. 【编程开发】CMake相关注意事项

    [编程开发]CMake相关注意事项 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ CMake是一个非常常用的跨平台移植的工具,CMake可用来生成不同平台下 ...

  2. 最新 美图java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.美图等10家互联网公司的校招Offer,因为某些自身原因最终选择了美图.6.7月主要是做系统复习.项目复盘.LeetCode ...

  3. 最新 小米java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.小米等10家互联网公司的校招Offer,因为某些自身原因最终选择了小米.6.7月主要是做系统复习.项目复盘.LeetCode ...

  4. apue-ubuntu环境搭建

    目录 apue环境搭建 title: apue环境搭建 date: 2019/11/19 19:25:18 toc: true --- apue环境搭建 下载编译 wget http://www.ap ...

  5. [Agc028B]Removing Blocks_排列组合

    Removing Blocks 题目链接:https://atcoder.jp/contests/agc028/tasks/agc028_b 数据范围:略. 题解: 这种问题的第一步很套路,就是对于每 ...

  6. 1、spring mvc jsp页面中文乱码

    jsp 页面头部 的page标签中加个 contentType="text/html;charset=utf-8"

  7. Kubernetes---启动及退出动作

    apiVersion: v1 kind: Pod metadata: name: lifecycle-demo spec: containers: - name:lifecycle-demo-cont ...

  8. Kindergarten(网络流解法)

    题意:http://acm.hdu.edu.cn/showproblem.php?pid=2458 问你二分图的最大团是多大. #define IOS ios_base::sync_with_stdi ...

  9. Django的URLconf

    URL 概要 我们要在Django项目中为应用程序设计URL,我们可以创建一个名为URLconf(通常为urls.py)的Python模块.这个模块是纯Python代码,是一个简单的正则表达式到Pyt ...

  10. SMTP实现发送邮箱2(封装版)

    SMTP.h #ifndef __SMTP_H__ //避免重复包含 #define __SMTP_H__ #include <iostream> #include <list> ...