ffmpeg学习心得之一键处理视频图片合成加图片水印文字水印裁剪
学了一个晚上,下面是我写的批处理
window命令行批处理直接拖文件夹或者拖动视频或者拖动音频可一键生成mp4.或者批量生成图片,或者生成gif
https://download.csdn.net/download/u010042660/10282760
2018/03/12 20:27 369 去掉音频.bat
2018/03/12 20:35 653 去掉音频姿势1 - 副本.bat
2018/03/12 20:35 653 去掉音频姿势1.bat
2018/03/12 20:58 306 命令提示.bat
2018/03/12 21:50 407 将文件夹image-5位数.jpeg图片转换为视频.bat
2018/03/12 21:56 465 将文件夹image-5位数.jpeg图片转换为视频每秒8帧.bat
2018/03/12 22:02 717 将文件夹image-5位数.jpeg图片转换为视频每秒8帧指定码率200清晰度.bat
2018/03/12 21:14 444 帧视频批量转换jpeg所有慎用.bat
2018/03/12 20:26 400 截取视频前15秒.bat
2018/03/12 22:41 498 拖拽文件夹图片和test.mp3合成为mp4.bat
2018/03/12 20:24 403 生成30帧转gif.bat
2018/03/12 21:03 391 视频中截帧变jpg指定分辨率.bat
2018/03/12 21:19 541 视频批量转换jpeg15秒开始抽取15帧.bat
2018/03/12 21:23 583 视频批量转换jpeg只抽取5秒从5秒开始-5张图.bat
2018/03/12 20:55 420 视频提取gif指定分辨率9秒还不错.bat
2018/03/12 20:53 521 视频文件转提取前20秒.bat
2018/03/12 21:34 735 调整视频分辨率Linux.bat
2018/03/12 22:24 732 音频图片test.jpg合并为新的视频.bat
官方可执行文件包:https://ffmpeg.zeranoe.com/builds/
文档http://ffmpeg.org/ffmpeg.html
选择window版本即可 建议配置环境变量,不然我这批处理要放到和ffmpeg文件在同一个地方..
我下载的是ffmpeg-20180312-939440a-win64-static文件包
ffmpeg加图片水印
ffmpeg -i video.mp4 -i test.png -c copy -filter_complex overlay=0:0 -y xx.mp4
之前测试,输出之后竟然视频卡在第一帧,郁闷了 原来是overlay=0:0后面加了一个:1的原因,不需要填写,我还以为设置透明度支持的呢.实际上就这样就可以
0:0代表x,和y参数.
ffmpeg加文字水印
ffmpeg -i %file% -vf "drawtext=fontfile=test.ttf:text='情随事迁666':x=0:y=0:fontsize=24:fontcolor=yellow:shadowy=2" -y %out%
加文字批处理文件如下
@echo off
::作者情随事迁 qssq666@foxmail.com http://github.com/qssqcls
:start
set file=%1
if "%file%"=="" echo 没有文件&pause&goto end
echo 正在对%file%进行处理
echo %file%|findstr ".mp4" >nul
if %errorlevel% equ 0 (
set out=%file:~0,-4%_new.mp4
) else (v
set out=new_%file%.mp4
)
echo 输出目录%out%
::-vcodec copy
ffmpeg -i %file% -vf "drawtext=fontfile=test.ttf:text='情随事迁666':x=0:y=0:fontsize=24:fontcolor=yellow:shadowy=2" -y %out%
pause
:end
探索:好像必须设置字体,不然各种错误,那么安卓系统就蛋疼了,如何使用系统字体并且不会受权限影响呢???
window尝试使用
ffmpeg -i %file% -vf "drawtext=text='情随事迁666':x=0:y=0:fontsize=24:fontcolor=yellow:shadowy=2" -y %out%
Cannot find a valid font for the family Sans
[AVFilterGraph @ 000002417b436500] Error initializing filter 'drawtext' with args 'text=鎯呴殢浜嬭縼666:x=0:y=0:fontsize=24:fontcolor=yellow:shadowy=2'
Error reinitializing filters!
Failed to inject frame into filter network: No such file or directory
参考
具体参数详情请看https://ffmpeg.org/ffmpeg-filters.html
`
添加动态gif
ffmpeg -y -i %file% -ignore_loop 0 -i test.gif -ss 00 -t 5000 -filter_complex overlay=0:0:1 %out%
ignore_loop
是否循环添加默认为帧ss
开始的秒t
总时长overlay=0:0:1
x,y,是否支持透明通道 1表示支持
添加图片文字水印一起添加提升效率
网上找到了文字和图片一起添加的,但是结果很不理想 估计是推荐转换为ts然后批量合并.
缩放gif 下面括号的内容可以不删除,语法照样支持的.
ffmpeg -y -i movie.mkv -ignore_loop 0 -i movieGif.gif -ss 0 -t 100 -filter_complex '[0:0]scale=iw:ih[firstInput]; [1:0]scale=iw/4:ih/4[secondInput]; [firstInput][secondInput]overlay=0:0:1' movieScaleGif.mp4
视频合成
ffmpeg -i "concat:input1.mpg|input2.mpg|input3.mpg" -c copy outputMovie.mpg
多段合成的优化
ffmpeg -i input1 -c copy -bsf:v h264_mp4toannexb -f mpegts input1.ts
ffmpeg -i input2 -c copy -bsf:v h264_mp4toannexb -f mpegts input2.ts
ffmpeg -i input3 -c copy -bsf:v h264_mp4toannexb -f mpegts input3.ts
ffmpeg -i "concat:input1.ts|input2.ts|input3.ts" -c copy -bsf:a aac_adtstoasc -movflags +faststart output
具体参考http://blog.csdn.net/doublefi123/article/details/47276739
裁剪和缩放实现视频海报区域
@echo off
::作者情随事迁 qssq666@foxmail.com http://github.com/qssq
cls
:startset file=%1
if "%file%"=="" echo 没有文件&pause&goto end
echo 正在对%file%进行处理
echo %file%|findstr ".mp4" >nulif %errorlevel% equ 0 (
set out=%file:~0,-4%_new.mp4
set scaleout=%file:~0,-4%_crop.mp4
) else (
set scaleout=%file:~0,-4%_crop.mp4
set out=new_%file%.mp4)
set width=150
set height=266
echo 输出目录%out%
::先缩放各位知道同时进行绘制图片和文字 以及同时缩放并裁剪 一条命令能搞定的朋友请指导,我尝试是不行的,会提示不能这样操作
ffmpeg -y -i %file% -vf scale=%width%:%height% %scaleout%
ffmpeg -y -i %scaleout% -vf crop=%width%:%height% %out%
pause
:end
滚动字幕实现
左右滚动的字幕:
./ffmpeg -i hello.mp4 -b:v 500K -vf drawtext=”fontfile=mpp.ttf:fontcolor=0xaaff00:fontsize=18:shadowy=0:\x=’if(gte(t,2), (main_w-mod(t*50,main_w)), NAN)’:y=(main_h-line_h-10):text=’关注广州小程,提升专业技能。’” hello.mp4
固定位置的字幕(这里加了两行):
./ffmpeg -i ~/Desktop/hello.mp4 -b:v 500K -vf “drawtext=fontfile=/Library/Fonts/华文黑体.ttf:fontcolor=yellow:fontsize=20:shadowy=0:x=(w-tw)/2-30:y=(main_h-line_h-50):text=”qssqqqqqq”,drawtext=fontfile=mpp.ttf:fontcolor=0xaaff00:fontsize=18:shadowy=0:x=(w-tw)/2-30:y=(main_h-line_h-20):text=’test’” hello1.mp4
http://www.taodudu.cc/news/show-7225301.html
相关文章:
- 使用mvc架构模式实现账户之间的转账(没有涉及事务处理)
- Spring D5
- 宁波市中医院-自己视力检查-2019年2月2日
- 求助-影像组学 for循环连续提取影像受阻
- 关于激光雷达盲区0.4m问题
- Opencv项目实战:基于dlib的疲劳检测
- 激光雷达动态障碍物滤除-调研与展望
- GRL(CVPR2023图像修复)训练自己的数据集
- 电脑连上wifi但不能上网的解决办法
- WiFi 無法上網(Wi-Fi列表不見了)
- 连上wifi但无法上网
- 家里WIFI连接上了但是无法上网的问题解决方案
- 解决电脑WiFi已连接,可是无法上网办法
- 新能源乘用车渗透率超30%!新能源汽车产业技术论坛11月3日开幕
- 报告解读下载 | 2022年4月中国数据库行业分析报告
- 报告 | 《2022年数据隐私统计、事实与趋势》,涵盖26项数据隐私统计数据
- 行业数据和报告到底应该如何去找?
- 5月《中国数据库行业分析报告》正式发布,首发时序、实时数据库两大【全球产业图谱】
- 学习总结——player(播放器)相关知识
- 企业微信,实现群机器人监控线上服务报警
- 《数字摄影与摄像》——风光摄影
- “湘西明珠”-凤凰古城
- 回顾光影先锋发展史(2)-佳能
- 《人在影途》----2010摄影之家年会贺岁片
- Ameya360:安森美成像技术开启数字电影摄影新纪元
- 美摄云剪辑3.0:融合AIGC,实现效率提升
- 安森美成像技术开启数字电影摄影新纪元
- 深入理解分布式技术 - 分布式系统中的缓存
- 面试官:聊一下分布式事务!
- 分布式事务专题-基本概念
ffmpeg学习心得之一键处理视频图片合成加图片水印文字水印裁剪相关推荐
- FFmpeg学习之二 (yuv视频渲染)
FFmpeg学习之二 (yuv视频渲染) yuv简介 1.yuv是什么 2.yuv采集方式 3.yuv存储方式 4.yuv格式 yuv视频渲染 1. iOS YUV视频渲染 1.1 IOS利用open ...
- ffmpeg学习(11)音视频文件muxer(2)多输入混流
在 ffmpeg学习(3)编码.解码的流程介绍 和 ffmpeg学习(9)音视频文件demuxer中介绍了媒体文件的解封装.本文记录Ffmpeg封装格式另一种处理与与demuxer相反方式–视音频复用 ...
- ffmpeg学习日记604-指令-将视频格式转为H264格式
ffmpeg学习日记604-指令-将视频格式转为H264格式 在第四篇中,想要解码视频,缺没有弄清楚怎样的一个数据流,现在又明晰了一点,所谓的h264编解码,并不是直接将视频格式,通过h264编解码为 ...
- ffmpeg学习(13)音视频转码(2)使用filter
ffmpeg学习(10)音视频文件muxer(1)封装格式转换 中介绍了媒体文件的封装格式转换,ffmpeg学习(11)音视频文件muxer(2)多输入混流 中介绍了音视频的混流,本文介绍基于ffmp ...
- ffmpeg学习日记612-指令-转换视频格式
ffmpeg学习日记612-指令-转换视频格式 mkv转mp4 ffmpeg -i LostInTranslation.mkv -codec copy LostInTranslation.mp4 Li ...
- ffmpeg学习日记603-指令-获取视频分辨率
ffmpeg学习日记603-指令-获取视频分辨率 ffmpeg:ffprobe获取视频分辨率,视频宽高,时长等元数据信息 ffprobe -select_streams v -show_entries ...
- ffmpeg学习日记605-指令-获取视频的总帧数
ffmpeg学习日记605-指令-获取视频的总帧数 获取视频的总帧数 ffprobe.exe -v error -count_frames -select_streams v:0 -show_entr ...
- ffmpeg学习日记602-指令-转换视频的分辨率
ffmpeg学习日记602-指令-转换视频的分辨率 指令如下 ffmpeg -i video_1920.mp4 -vf scale=640:360 video_640.mp4 -hide_banner
- android视频叠加字符,手机上给视频加logo 安卓手机上给视频加摇摆的文字水印的方法...
注意此教程方案是『安卓手机端教程方案』 如果在手机端操作不方便或对眼睛不好 也可以用另外电脑端的教程方案操作:视频加旋转水印[找更多方案] 今天要介绍安卓手机上视频编辑助手是可以给视频添加摇摆的文字水 ...
最新文章
- 平台允许同时在线人数 显示_糖豆人:终极淘汰赛 热度持续飙升 Steam同时在线人数排名前四...
- Android APK方式换肤实现原理
- https://cwiki.apache.org/confluence/display/FLINK/FLIP-24+-+SQL+Client
- 关于go指针在方法or函数中这件事
- matlab保存并关闭excel文件夹,[转载]Matlab批量操作目标文件夹下的Excel文件
- TP框架中的A方法和R方法
- java 虚拟机内存管理_java虚拟机内存管理
- LeetCode Online Judge 题目C# 练习 - Search in Rotated Sorted Array II
- linux命令:tail 命令
- fish-ui 一套基于vue2的ui组件库
- android 吃鸡模拟器,《刺激战场模拟器》电脑版 逍遥安卓模拟器智能键吃鸡设置...
- photoshop是什么软件,它能做什么?
- C# 消息盒子 右下角显示窗体
- vm centos火狐找不到服务器
- 程序分析与优化 - 6 循环优化
- 2020 年最具潜力 44 个顶级开源项目,涵盖 11 类 AI 学习框架、平台(值得收藏)...
- PCL学习笔记3-KdTree
- html5+css3界面设计,仿微信支付设计数字键盘
- 利用screen命令将程序挂在linux后台
- 计算机会计期中考试,2017会计从业资格考试《会计电算化》基础阶段备考题
热门文章
- 7-19 换硬币 (20 分)将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?
- 使用smart-doc 做接口文档工具,Controller访问路径中的常量无法替换问题
- Responsibility
- 李乐逸前端的学习内容 HTML篇
- 同余问题(含证明)整理(篇目①:定义、性质与两个简单定理)
- swift No such module ‘Kingfisher‘
- python学籍注册小程序
- word双栏排版,最后一页由于分节符造成最后一页是空白页,删除分节符双栏就变成了单栏
- FZU Problem 1077 铁皮容器
- 西安交大计算机考研软件工程编程题库(十八)