找回密码
 立即注册
搜索
查看: 323|回复: 0

FFMPEG随机位置文字水印BAT脚本

[复制链接]
发表于 2024-10-6 03:58:16 | 显示全部楼层 |阅读模式
  1. @ECHO Off & setlocal enabledelayedexpansion
    . H, `( q1 _7 S1 ~9 o
  2. color 0a
    ' H; {3 P2 M' }- x* E
  3. TITLE FFMPEG批量加水印-%cd%
    # N& E/ x* t; U8 l: w# E: C3 a$ x
  4. @ md download1 ]% u2 m1 [/ h" Z" f' B
  5. @ md video
    6 u4 a' [: n( }
  6. :start
    ! X' a( G5 h! y% T: n: m+ c2 I1 k
  7. cls0 \' S" T" W- |7 q. @2 J
  8. ECHO.     ┌──────雪球联盟MCN批量视频水印工具──────┐
    4 I* k* d' {, S! {
  9. ECHO.                                     ) r+ {4 v. u1 t% Y) U
  10. ECHO.           By:魏枫伦  http://www.xqmcn.com
      e' y3 y6 x* ~! Q" J+ a& W
  11. ECHO.                                       
      u0 B& E; E2 R' y
  12. ECHO.          视频路径/download,导出路径/video7 O# ?: @( R" o6 h- n  m; T
  13. ECHO.                               
    ) D4 B6 ?4 B; H# P7 \
  14. echo.     └──────雪球联盟MCN批量视频水印工具──────┘+ k+ k' A+ S9 A3 k
  15. ECHO.
    2 W/ i$ B/ Q  w8 K8 F% W3 D0 g
  16. for /f "tokens=1,2 delims==" %%a in ('wmic path Win32_VideoController get Name /value^|findstr "Name"') do (echo %%b | findstr "NVIDIA" >nul &&(8 A3 E, [6 X! B
  17.     echo.★本机支持硬件加速,显卡型号:%%b
    / m% j! v: n' }" Y% o- M
  18.     set /a  user_input=1
    / n# b% k! Q0 P( d# r
  19. ) || (
    ) d* y( k1 y" A2 p! |& e# }
  20.     echo.☆本机不支持硬件加速,默认采用软件编码& }6 |5 }, U0 w. H" |
  21.     set /a  user_input=2
    8 f' H* r. u. w: S# P; R
  22.     goto text2 y7 o$ }* x' \7 q1 P
  23. ))) e  M, |; [2 \3 i/ J7 f" v6 e
  24. echo.0 M$ q9 L7 l. w: K6 a
  25. ECHO.==========设置开始,保持默认值请直接按回车==========
    1 [5 {1 e! n7 ]2 E% Y% ~7 Q6 A
  26. echo.0 n2 \* {7 @2 Q, K/ |! U
  27. ECHO.【须提前准备字体文件"font.ttf"放到:程序所在目录】, _) r- t' W, U3 ^
  28. echo.
    . j8 w% t- d5 v) P' w
  29. ECHO.▼设置编码方式:【1.Nvida硬件编码(快)】【2.软件编码(慢)】(默认:1):
    1 I4 T5 D  F: J2 X" n
  30. set user_input=&set /p  user_input=
    $ o3 _# n  h* Q4 S5 \. x6 ]
  31. if "%user_input%"==""  set /a  user_input=1
    $ S5 a  b% C1 |, P2 I, S
  32. if "%user_input%"==" "  set user_input=&goto start' u& K1 r* f9 R4 u
  33. :text' ]# y" ]9 N* U: W1 v
  34. SET fontFile=%cd%\font.ttf
    % T! y* v( ]/ V. X2 O- A( h2 e
  35. if  exist %fontFile% ( echo.水印字体存在,继续操作 ) else ( echo.水印字体font.ttf不存在,请先添加 && goto start) ! D) E4 R( |8 }% \
  36. ECHO.
    ) q  O2 g$ ]3 Z8 ]3 a# e
  37. ECHO.▼需要添加的文字水印内容:8 c& V" M* d- v/ p( x5 Z+ y5 p
  38. set text=&set /p  text=: ~- |5 v9 s5 E+ H
  39. if "%text%"==""  echo.文字未设置,请重新设置 && goto text
    % u: }. y, b8 [9 R; q
  40. if "%text%"==" " set text=&goto start
    . P& V' f, z2 g& V, q" `) a; [
  41. ECHO.▼水印切换周期(帧):
    * S" i! }' D% e. ^3 o- K
  42. ECHO.【例:30fps的视频,3秒切换一次,填90】: _: Z; S  |1 P6 ^9 o
  43. set during=&set /p  during=
    # v! L3 G& |  h0 W4 a
  44. if "%during%"==""  set /a  during=150
    7 w7 z1 T6 O) }# z) d; E6 G. |
  45. if "%during%"==" " set during=&goto start
    6 ]( J* u, W5 B7 P/ R
  46. ECHO.▼请填写字体大小(默认40):' a5 @  l) j$ ~5 S, G1 z1 W
  47. set fontsize=&set /p  fontsize=
    4 N" x0 V' w$ H# d
  48. if "%fontsize%"==""  set /a  fontsize=40
    1 |' g0 r. C9 G6 a- b2 l( G
  49. if "%fontsize%"==" " set fontsize=&goto start) A* \9 P* d+ ^
  50. ECHO.▼请填写水印字体颜色(默认white):8 C8 T) \8 J8 W6 W  R+ j; w
  51. set fontcolor=&set /p  fontcolor=: D% u+ E+ {# r( n1 a! S
  52. if "%fontcolor%"==""  set  fontcolor=white0 [% n4 L+ k8 ]3 A
  53. if "%fontcolor%"==" " set fontcolor=&goto start
    : E# L; Z" k& `) L  w2 ]

  54.   [) H- @7 ?* I1 Z% |" o% v
  55. set shuiyinstr="drawtext=fontfile=font.ttf:fontsize=%fontsize%:fontcolor=%fontcolor%@0.5:text='%text%':x=if(eq(mod(n\,%during%)\,0)\,rand(0\,(W-tw))\,x):y=if(eq(mod(n\,%during%)\,0)\,rand(0\,(H-th))\,y)"4 \2 c: n& X( L+ Y3 k( y9 l

  56. # K6 ?. X* T7 y1 d
  57. if "%user_input%"=="1" (set bianmastr=  -threads 2  -vcodec h264_nvenc  && set bianma=硬件编码) else (  set bianmastr=  -vcodec libx264  -preset slow  -crf 18   &&  set bianma=软件编码)& f6 N" {; M' }% z# x
  58. ECHO.%bianma%-水印文字:%text%-周期%during%-字号%fontsize%-颜色%fontcolor%
    9 s4 Y/ Q6 d2 @( ]
  59. ECHO.==========参数设置完成,按任意键开始,输入N重新设置==========
    1 a& `. c3 b! g+ ~) Q4 p; [) U6 K
  60. set  yes=&set /p  yes=
    7 ?" n8 Z" {# P3 c% X/ H
  61. if "%yes%"=="N" goto start8 [! q' @$ Y# n/ Q2 i2 i3 M; v
  62. if "%yes%"=="n" goto start# h3 w2 F6 r! W2 ^7 q4 k% m2 T
  63. if "%yes%"==" " goto start
    2 G! z, ?/ H' @" F! Z& [

  64. : o* h5 o& r9 L. R, C. U
  65. for /R %cd%\download\ %%a in (*.mp4 *.flv *.mov *.ts *.mkv) do (TITLE FFMPEG%bianma%-水印%text%-周期%during%-字号%fontsize%-颜色%fontcolor%-已处理!sum!个-【%cd%\%%~na.mp4】&& ffmpeg -i "%%a" -vf %shuiyinstr%  %bianmastr%  -c:a copy -y "%cd%\video\%%~na.mp4" &&echo.处理"%%~na.mp4结束" && set /a sum+=1 )* z4 x  w6 C* E/ d! ~6 q" J3 t
  66. TITLE FFMPEG%bianma%完成,%cd%\该目录总共处理!sum!个视频
      x/ o# M" b: h6 }7 C3 c" {
  67. echo 按任意键退出 & pause
    6 h" i( j, H# v9 \+ c
  68. exit
复制代码

4 s/ B( B4 \6 Y3 R8 p# l8 a, v) G: Q8 V0 S& U( [' P: K; U! n0 R# L

FFMPEG随机位置文字水印BAT脚本.zip

1.89 MB, 阅读权限: 10, 下载次数: 12, 下载积分: 金钱 -5

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|

GMT+8, 2026-11-3 02:35 AM , Processed in 0.096229 second(s), 26 queries .

Powered by xyh-moon X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表