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

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

[复制链接]

991

主题

92

回帖

5万

积分

管理员

积分
55422
发表于 2024-10-6 03:58:16 | 显示全部楼层 |阅读模式
  1. @ECHO Off & setlocal enabledelayedexpansion
    : z; s& U; q7 W6 z" ]
  2. color 0a* V- p5 S* X" d9 x6 s  s) j% ?1 R
  3. TITLE FFMPEG批量加水印-%cd%6 L2 o, z2 F! |7 d1 d' h
  4. @ md download7 _/ L# v% W5 h: i) _
  5. @ md video
    7 [6 L: g: ~  _0 `
  6. :start
    $ k; x- M% L& _) W/ f* C0 E% K6 f( z
  7. cls, _" E1 |( Q6 x0 p3 J
  8. ECHO.     ┌──────雪球联盟MCN批量视频水印工具──────┐
    0 A3 b2 V  {: ?2 m8 Q* D$ m
  9. ECHO.                                     
      v* }" W# Z& ^5 E+ r; ^
  10. ECHO.           By:魏枫伦  http://www.xqmcn.com
    $ o4 s9 o& G& n6 R0 G
  11. ECHO.                                       ) W/ c  W' B! `& k
  12. ECHO.          视频路径/download,导出路径/video
    & E6 [' A% o9 N' M  a9 _
  13. ECHO.                               
    5 g/ V1 }3 L7 {
  14. echo.     └──────雪球联盟MCN批量视频水印工具──────┘
    7 i" c. G1 Z1 D! S  Y) d
  15. ECHO.
    ; I5 M$ i+ E0 a9 `
  16. for /f "tokens=1,2 delims==" %%a in ('wmic path Win32_VideoController get Name /value^|findstr "Name"') do (echo %%b | findstr "NVIDIA" >nul &&(
    % U" k& a% ~3 G+ V: M* q8 i
  17.     echo.★本机支持硬件加速,显卡型号:%%b, u+ [' C0 W! c3 N6 e" O
  18.     set /a  user_input=1
    & b* y0 Q7 _: l& |& P6 {0 y% o
  19. ) || (
    3 |4 z$ W$ f9 b8 s4 {$ b
  20.     echo.☆本机不支持硬件加速,默认采用软件编码
    ( B8 c. h! ^. M
  21.     set /a  user_input=20 i' p7 M2 F( S, B) W
  22.     goto text; S/ ~; I! w6 {. ^
  23. ))
    & Z! R% ?% o& L
  24. echo.
    : P% k1 j6 a4 g) U$ O- X( M9 s
  25. ECHO.==========设置开始,保持默认值请直接按回车==========/ W: I0 y( e6 V  h! _
  26. echo.
    5 w: ~' w3 n- P6 H; S
  27. ECHO.【须提前准备字体文件"font.ttf"放到:程序所在目录】
    2 S- i/ O; d- r# [6 L
  28. echo.
    ! f5 K: H( ~! A$ h
  29. ECHO.▼设置编码方式:【1.Nvida硬件编码(快)】【2.软件编码(慢)】(默认:1):9 I1 K. u* M* V5 Q  j$ F
  30. set user_input=&set /p  user_input=
    9 z% E  o# Q  ^8 k
  31. if "%user_input%"==""  set /a  user_input=1' S' [+ H  T7 y3 l
  32. if "%user_input%"==" "  set user_input=&goto start
    ' g+ H& [6 X% w* n3 d3 j
  33. :text
    5 b: [. W7 C% O5 H" c
  34. SET fontFile=%cd%\font.ttf" K+ y, u/ A' M; ^
  35. if  exist %fontFile% ( echo.水印字体存在,继续操作 ) else ( echo.水印字体font.ttf不存在,请先添加 && goto start)
    ; M! v& u9 `' Z# W/ C
  36. ECHO.* ]+ }3 B: O& V3 V6 w! g
  37. ECHO.▼需要添加的文字水印内容:1 q% Q" E* p( L
  38. set text=&set /p  text=. P: R- `, B# p4 ?  Q$ y
  39. if "%text%"==""  echo.文字未设置,请重新设置 && goto text
    ! G0 a) q9 C+ `, M- X
  40. if "%text%"==" " set text=&goto start
    7 U: K( Q3 s" ]5 l6 ]6 R
  41. ECHO.▼水印切换周期(帧):& k0 b9 ~/ n: n. F# c
  42. ECHO.【例:30fps的视频,3秒切换一次,填90】
    5 f& ]: k" ~" e( O& M. v$ Z0 c
  43. set during=&set /p  during=6 X4 m" s9 p! E6 `- D! n" }& }
  44. if "%during%"==""  set /a  during=150
    " Y" M5 L. L( `& A/ F7 _% O7 ^" ~" U
  45. if "%during%"==" " set during=&goto start
    . c) ?! S" q9 Q" O$ \
  46. ECHO.▼请填写字体大小(默认40):
    $ P- d/ Y* m, \6 L2 h9 ]
  47. set fontsize=&set /p  fontsize=
    - Z4 N- W5 g3 l2 h
  48. if "%fontsize%"==""  set /a  fontsize=40" A' ~5 A: z3 h! _+ Y& M5 k6 b1 D
  49. if "%fontsize%"==" " set fontsize=&goto start5 j/ ^& q2 B, a' L  D1 L, }
  50. ECHO.▼请填写水印字体颜色(默认white):: p/ [' J! T' @5 ?. l( A
  51. set fontcolor=&set /p  fontcolor=
    7 ]5 S( q$ C. `. W1 `5 a3 X' }3 ~: l
  52. if "%fontcolor%"==""  set  fontcolor=white0 w: ^8 o+ U- l& ]8 Y: E' q
  53. if "%fontcolor%"==" " set fontcolor=&goto start
    / g( ]3 Q: K7 ^+ v

  54. : R7 w; H( M  K
  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)"
    ) f/ W8 [: v1 c0 ^5 L. m- r
  56. / I6 t& ^' b: X6 ^( S1 O6 v
  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=软件编码)
    # X4 v  r6 Z& X& d9 p
  58. ECHO.%bianma%-水印文字:%text%-周期%during%-字号%fontsize%-颜色%fontcolor%) m. j7 `, |7 E/ ~2 E, m7 X2 W+ B3 R5 h
  59. ECHO.==========参数设置完成,按任意键开始,输入N重新设置==========
    & ?2 W& H4 I  g# d- @$ N% x7 Z
  60. set  yes=&set /p  yes=6 T  Z8 P6 x. f9 M- O+ ^; v) F
  61. if "%yes%"=="N" goto start
    # Q  S' R: ^1 G8 m
  62. if "%yes%"=="n" goto start
    & J; G+ a- ?" a1 W4 H. _# N
  63. if "%yes%"==" " goto start
    . i% K' j) d" I5 ?

  64. - C) G7 X0 i' m4 i  I. J- P
  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 )
    $ t3 y6 M1 L* A# ?+ x
  66. TITLE FFMPEG%bianma%完成,%cd%\该目录总共处理!sum!个视频
    6 M7 ~3 ], m; X0 Q/ T1 v
  67. echo 按任意键退出 & pause1 X3 b3 l# g: U( X' e+ g
  68. exit
复制代码

! t3 W+ u9 @& d3 r+ l. L' K3 c( w- r4 c  }6 w

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

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

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

本版积分规则

Archiver|手机版|小黑屋|

GMT+8, 2026-6-20 05:58 AM , Processed in 0.116857 second(s), 26 queries .

Powered by xyh-moon X3.5

© 2001-2025 Discuz! Team.

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