ffmpeg 处理视频项目中用到的一些命令
多媒体视频处理工具FFmpeg有非常强大的功能包括视频采集功能、视频格式转换、视频抓图、给视频加水印等。
目前仅接触到了一些初级命令,今天进行了简单整理。
分辨率
//智能1:1缩放
-i in.mp4 -s : -vf setsar=: out.mp4
//普通缩放
-i in.mp4 -strict - -vf scale=: out.mp4
视频合成
//视频先转为ts格式
-i in.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb out.ts
//合成
-i concat:.ts|.ts|.ts -acodec copy -vcodec copy -absf aac_adtstoasc out.mp4
背景音乐
//去除原音频
-i in.mp4 -an -vcodec copy out.mp4
//添加背景音乐
-i in.mp4 -i in.mp3 -vcodec copy out.mp4
//设置音量
-i in.mp4 -af volume=1dB out.mp4
画中画
//左上角
-i in1.mp4 -i in2.mp4 "nullsrc=size=200x200 [base]; [0:v] setpts=PTS-STARTPTS,scale=200x200
[left]; [:v] setpts=PTS-STARTPTS, scale=100x100 [right];[base][left] overlay=shortest= [tmp1];
[tmp1][right] overlay=shortest=:x=" -c:v libx264 out.mp4
//左下角
-i in1.mp4 -i in2.mp4 "nullsrc=size=200x200 [base]; [0:v] setpts=PTS-STARTPTS,scale=200x200
[left]; [:v] setpts=PTS-STARTPTS, scale=100x100 [right];[base][left] overlay=shortest= [tmp1];
[tmp1][right] overlay=shortest=:x=:y=-" -c:v libx264 out.mp4
倒放
//视频倒放,无音频
-i in.mp4 -filter_complex [:v]reverse[v] -map [v] -preset superfast out.mp4
//视频倒放,音频不变
-i in.mp4 -vf reverse out.mp4
//音频倒放,视频不变
-i in.mp4 -map -c:v copy -af "areverse" out.mp4
//音视频同时倒放
-i in.mp4 -vf reverse -af areverse -preset superfast out.mp4
去水印
//x、y为水印坐标,w、h为水印大小
-i in.mp4 -filter_complex "delogo=x=998:y=15:w=260:h=80" out.mp4
添加水印
//图片水印:logopath为水印路径,overlay为水印位置(左上)
-i in.mp4 -i logopath -filter_complex overlay=: out.mp4
//文字水印
-i in.mp4 -vf "drawtext=fontsize=20:fontfile=simsun.ttc:text='文字水印':fontcolor=red:x=10:y=10"
转载请注明出入来源:https://www.cnblogs.com/famhuai/p/10539087.html
ffmpeg 处理视频项目中用到的一些命令的更多相关文章
- Java Web 中使用ffmpeg实现视频转码、视频截图
Java Web 中使用ffmpeg实现视频转码.视频截图 转载自:[ http://www.cnblogs.com/dennisit/archive/2013/02/16/2913287.html ...
- ffmpeg为视频添加时间戳 - 手动编译ffmpeg
FFMPEG给视频加时间戳水印 项目中需要给视频添加时间戳,理所当然最好用的办法是ffmpeg.在找到正确的做法前,还被网上的答案timecode给水了一下(水的不轻,在这里转了2天),大概是这样写的 ...
- iOS 项目中用到的一些开源库和第三方组件
iOS 项目中用到的一些 iOS 开源库和第三方组件 分享一下我目前所在公司 iOS 项目中用到的一些 iOS 开源库和第三方组件, 感谢开源, 减少了我们的劳动力, 节约了我们大量的时间, 让我们有 ...
- C# 利用ffmpeg 对视频转换系类操作 (1) 基本分析
最近公司做一个项目,开发一个视频站点.项目需求中有很多视频转换的需求,如:格式转换(flv,Mp4),视频水印,视频截图,视频合成,获取视频的基本信息(时间戳,视频大小等).经过网络的收集资料以及自己 ...
- NET 2.0(C#)调用ffmpeg处理视频的方法
另外:ffmpeg的net封装库 http://www.intuitive.sk/fflib/ NET 2.0 调用FFMPEG,并异步读取输出信息的代码...public void ConvertV ...
- python+ffmpeg切割视频
什么是ffmpeg 1.1 简介 FFmpeg是一个开源免费跨平台的视频和音频流方案,属于自由软件,采用LGPL或GPL许可证(依据你选择的组件).它提供了录制.转换以及流化音视频的完整解决方案.它包 ...
- FFmpeg:视频转码、剪切、合并、播放速调整
原文:https://fzheng.me/2016/01/08/ffmpeg/ FFmpeg:视频转码.剪切.合并.播放速调整 2016-01-08 前阵子帮导师处理项目 ppt,因为插入视频的格式问 ...
- Java+Windows+ffmpeg实现视频转换
最近由于项目需要,研究了一下如何用Java实现视频转换,“着实”废了点心思,整理整理,写出给自己备忘下. 思路 由于之前没有没法过相关功能的经验,一开始来真不知道从哪里入手.当然,这个解决,googl ...
- Java使用FFmpeg处理视频文件指南
Java使用FFmpeg处理视频文件指南 本文主要讲述如何使用Java + FFmpeg实现对视频文件的信息提取.码率压缩.分辨率转换等功能: 之前在网上浏览了一大圈Java使用FFmpeg处理音视频 ...
随机推荐
- springboot整合mybatis遇到的那些坑
1.接口类(指*Mapper.java)在spring中注册的问题 当控制台打印如下信息: A component required a bean named '*Mapper' that could ...
- Python设计模式 - 基础 - 七大基本原则
提倡使用设计模式,主要出发点就是实现代码复用,增加代码的扩展性和可维护性.如何设计出简洁.易懂.灵活.优美的代码结构的确是一门学问,透彻理解并践行如下七大原则通常都能取得基本满意的结果: - 单一职责 ...
- mysql学习笔记--数据完整性
一.数据完整性包括: 1. 域完整性 2. 实体完整性 3. 引用完整性 二.保证实体完整性 1. 主键约束 2. 唯一约束 3. 自动增长列 三.保证域完整性 1. 数据类型约束 2. 非空约束 3 ...
- elementui上传文件
<el-form-item label="上传附件"> <transition name="fade"> <el-upload r ...
- swap的实现(没有中间变量)
两数交换最常用的方法 void swap(int &a,int &b) { int temp=a; a=b; b=temp; } 如果没有中间变量temp可以使用呢,还有其他的三种方法 ...
- BZOJ1026或洛谷2657 [SCOI2009]windy数
BZOJ原题链接 洛谷原题链接 简单的数位\(DP\),套模板就好. #include<cstdio> #include<cstring> using namespace st ...
- [杂谈]杂谈章1 问几个JAVA问题
1.面向对象.面向过程 区别 2.Java 如何实现的平台无关 和C/C++不同的是,Java语言提供的编译器不针对特定的操作系统和CPU芯片进行编程,而是针对Java虚拟机把Java源程序编译成称为 ...
- centos 网卡自动连接
/etc/sysconfig/network-scripts/目录下ifcfg-eth0这个文件,把ONBOOT="no"改为yes,
- MFC设置单文档保存格式以及标题
在使用MFC编写单文档程序时,有时候需要将编辑的内容序列化为文件,使该文件可以直接以自己的程序打开,这时候需要在保存时将文件后缀改为我们想要的格式. 步骤 打开String Table,找到IDR_M ...
- SpringMVC+JQuery实现头像编辑器
一.简单说明 本头像编辑器主要实现了图片的上传.显示(不溢出父窗口).旋转.裁剪功能! 图片的上传用到的是异步上传,页面不进行刷新,原理是通过JQuery的异步提交+SpringMVC的上传 上传完毕 ...