多媒体视频处理工具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 处理视频项目中用到的一些命令的更多相关文章

  1. Java Web 中使用ffmpeg实现视频转码、视频截图

    Java Web 中使用ffmpeg实现视频转码.视频截图 转载自:[ http://www.cnblogs.com/dennisit/archive/2013/02/16/2913287.html  ...

  2. ffmpeg为视频添加时间戳 - 手动编译ffmpeg

    FFMPEG给视频加时间戳水印 项目中需要给视频添加时间戳,理所当然最好用的办法是ffmpeg.在找到正确的做法前,还被网上的答案timecode给水了一下(水的不轻,在这里转了2天),大概是这样写的 ...

  3. iOS 项目中用到的一些开源库和第三方组件

    iOS 项目中用到的一些 iOS 开源库和第三方组件 分享一下我目前所在公司 iOS 项目中用到的一些 iOS 开源库和第三方组件, 感谢开源, 减少了我们的劳动力, 节约了我们大量的时间, 让我们有 ...

  4. C# 利用ffmpeg 对视频转换系类操作 (1) 基本分析

    最近公司做一个项目,开发一个视频站点.项目需求中有很多视频转换的需求,如:格式转换(flv,Mp4),视频水印,视频截图,视频合成,获取视频的基本信息(时间戳,视频大小等).经过网络的收集资料以及自己 ...

  5. NET 2.0(C#)调用ffmpeg处理视频的方法

    另外:ffmpeg的net封装库 http://www.intuitive.sk/fflib/ NET 2.0 调用FFMPEG,并异步读取输出信息的代码...public void ConvertV ...

  6. python+ffmpeg切割视频

    什么是ffmpeg 1.1 简介 FFmpeg是一个开源免费跨平台的视频和音频流方案,属于自由软件,采用LGPL或GPL许可证(依据你选择的组件).它提供了录制.转换以及流化音视频的完整解决方案.它包 ...

  7. FFmpeg:视频转码、剪切、合并、播放速调整

    原文:https://fzheng.me/2016/01/08/ffmpeg/ FFmpeg:视频转码.剪切.合并.播放速调整 2016-01-08 前阵子帮导师处理项目 ppt,因为插入视频的格式问 ...

  8. Java+Windows+ffmpeg实现视频转换

    最近由于项目需要,研究了一下如何用Java实现视频转换,“着实”废了点心思,整理整理,写出给自己备忘下. 思路 由于之前没有没法过相关功能的经验,一开始来真不知道从哪里入手.当然,这个解决,googl ...

  9. Java使用FFmpeg处理视频文件指南

    Java使用FFmpeg处理视频文件指南 本文主要讲述如何使用Java + FFmpeg实现对视频文件的信息提取.码率压缩.分辨率转换等功能: 之前在网上浏览了一大圈Java使用FFmpeg处理音视频 ...

随机推荐

  1. logrotate-日志切割示例

    logrotate是linux系统自带的工具,它可以自动对日志进行截断(或轮循).压缩以及删除旧的日志文件. 1)配置文件示例# cat /wls/wls81/bin/weblogic/wls/app ...

  2. 九、Brideg 桥接模式

    设计原理: 代码清单: 抽象类 DisplayImpl public abstract class DisplayImpl { public abstract void rawOpen(); publ ...

  3. 20175314 《Java程序设计》第二周学习总结

    20175314 <Java程序设计>第二周学习总结 教材学习内容总结 我在APPstore上发现了一个可以支持我们在IOS系统上学习实践Java程序的开发环境,只需要购买专业版就可以使用 ...

  4. MySQL经典练习题

    表名和字段 –1.学生表 Student(s_id,s_name,s_birth,s_sex) –学生编号,学生姓名, 出生年月,学生性别 –2.课程表 Course(c_id,c_name,t_id ...

  5. Lozad.js 简单使用

    GayHub位置:https://github.com/ApoorvSaxena/lozad.js 导入: <script type="text/javascript" sr ...

  6. layui超链接追加tab选项卡必须手动刷新才出现问题

    在admin.js中tabAdd方法里 var li = $("#WeTabTip li[lay-id=" + id + "]").length;中的id外面加 ...

  7. Java日期时间处理

    Java 日期时间处理 一.时间相关类 java.lang.System java.util.Date java.util.Calendar java.util.GregorianCalendar j ...

  8. sql 百万级或千万级数据分页处理

    笔记来源 https://blog.csdn.net/zhenyuanjie/article/details/7778102

  9. windows安装mongodb及相关命令

      - 安装   解压: mongodb-win32-x86_64-2008plus-ssl-3.6.4.7z 将文件夹改名为mongodb 移动文件到指定目录下,如: C:\python\soft ...

  10. 前端之js

    简介:     JavaScript是运行在浏览器端的脚步语言,JavaScript主要解决的是前端与用户交互的问题,包括使用交互与数据交互,JavaScript是浏览器解释执行的 前端三大块    ...