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处理音视频 ...
随机推荐
- NET Core小细节杂记
1.中文编码问题: 01.在net core中,使用中文的编码,要先进行注册: //CodePagesEncodingProvider在包System.Text.Encoding.CodePages中 ...
- stark组件开发之分页
""" 分页组件 """ class Pagination(object): def __init__(self, current_page ...
- [原]Docker部署SuperMap8.1.1
摘要:本文主要实践在Docker上制作SuperMap(超图)V8.1.1镜像,文中将使用 docker commit 方式创新镜像(Dockerfile择机再做).本文中使用的宿主环境及镜像环境都是 ...
- unity3d 代码动态添加,修改BoxCollider2D
BoxCollider2D box = gameObject.AddComponent<BoxCollider2D>(); box.size = new Vector2(1.0f, 1.0 ...
- dtruss
一.简介 系统调用跟踪工具. 二.实例
- jenkins shell部署
jenkins执行shell脚本 jenkins执行shell 上一篇说的是jenkins+svn+maven把war包自动部署到Tomcat,这篇是从SVN上拉取代码maven生成jar文件,并且拷 ...
- em,px,rem的区别
px:IE无法调整px作为单位的字体大小. 是像素,是相对长度单位,是相对于显示器屏幕分辨率而言的. em:相对于当前对象内文本的字体尺寸.1em=16px: rem:在设置字体大小时,虽然仍然是相对 ...
- python 2与python3 区别
源码区别 python3:python2 a) py3 优美简单清晰. b) py2:源码重复,混乱,不规范,冗(rong)余(不需要特多,啰嗦). test a) py3:可以中文也可以英文( ...
- 微信小程序设置背景铺满全屏
参考方法: 新版本升级取消了默认page的100%的特性 需要在app.wxss文件中加入如下代码: page{ height:100%; }
- 充分利用CPU多核的处理能力 innodb_read_io_threads和innodb_write_io_threads
https://book.2cto.com/201402/40300.html 在MySQL5.1.X版本中,innodb_file_io_threads参数默认是4,该参数在Linux系统上是不可更 ...