使用 ffmpeg批量给图片加水印

ffmpeg是一款强大的音视频处理软件,基于命令行运行。最近在实践中碰到要给图片加水印的问题,想到写一个.bat文件批量处理的话效率会大大提高。

代码很简单,这是我第一次使用.bat文件,故marked一下。

在放置图片的文件夹中新建一个txt文档,输入以下命令:

for /r %%a in (*.jpg) do ffmpeg -i %%a -vf  "movie=watermark.png,scale= 113: 58[watermask]; [in] [watermask] overlay=465:365 [out]" D:\images\600x450_result\add_watermark\%%~na.png

for /r %%a in (*.jpg) 表示以/r(包括子目录)的方式遍历文件夹中的所有.jpg图片,%%a为批处理中的变量名。

do 后面为ffmpeg指令。-i后面为输入图片,此处为%%a;watermark.png为水印图片;scale为水印大小;overlay指定水印位置;

[out] 后面指定输出图片的保存位置、名称及格式,%%~na表示尽扩展变量名到名称部分,不包括后缀,如%%a=image1.jpg,

则%%~na=image1。

输入以上指令后保存关闭txt文件,并把后缀改为.bat,双击.bat文件即可自动循环给文件夹中的图片加上水印。

 

你可能感兴趣的:(图像处理)