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

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

[复制链接]

986

主题

92

回帖

5万

积分

管理员

积分
55255
发表于 2024-10-6 03:58:16 | 显示全部楼层 |阅读模式
  1. @ECHO Off & setlocal enabledelayedexpansion' g; s5 I5 j) \4 B
  2. color 0a, t6 M% Z: G, y% D
  3. TITLE FFMPEG批量加水印-%cd%4 P% R- U' z7 S9 x
  4. @ md download* p6 h6 ]* X. g$ ?1 O: p- h
  5. @ md video5 E4 j( ^* `! }/ h8 M1 w) B1 c
  6. :start: O! ]2 k7 ?# G
  7. cls
    ; `; {5 S+ L! D/ {- d0 o) i
  8. ECHO.     ┌──────雪球联盟MCN批量视频水印工具──────┐
    . Z! d! w, c1 z& e5 K; r: _
  9. ECHO.                                     
    $ K8 H+ Z* K: d* r$ b
  10. ECHO.           By:魏枫伦  http://www.xqmcn.com ) d8 {, r) v/ S- H0 l
  11. ECHO.                                       
    5 h$ ~. f1 Z. |" d7 ^  S
  12. ECHO.          视频路径/download,导出路径/video8 F7 N" Q& V# T" C& f* A
  13. ECHO.                               , P# F" R9 ]8 C: l9 `
  14. echo.     └──────雪球联盟MCN批量视频水印工具──────┘
    2 I4 }1 `# f3 p, K4 r4 R; [, c
  15. ECHO.8 K4 j$ W( o; n+ c" P
  16. for /f "tokens=1,2 delims==" %%a in ('wmic path Win32_VideoController get Name /value^|findstr "Name"') do (echo %%b | findstr "NVIDIA" >nul &&(
      Q  {3 n$ N8 A3 p
  17.     echo.★本机支持硬件加速,显卡型号:%%b% ~$ a& b& ~4 c6 x+ k4 n* u
  18.     set /a  user_input=1
      F+ w' g: f* h- Y. ^( t
  19. ) || (
    $ D' D, B! i: W* Z% A% m$ g2 K
  20.     echo.☆本机不支持硬件加速,默认采用软件编码! _. B4 Z+ R0 N- j; ^9 n( G0 p; e( u! }+ V
  21.     set /a  user_input=2
    8 a4 i: i1 _  l* y
  22.     goto text, b7 U- K5 M; W& k1 o, R. b( X7 M) f
  23. ))6 S$ d! U7 I; h. l+ O+ M& n
  24. echo.7 v# S1 q" y) K
  25. ECHO.==========设置开始,保持默认值请直接按回车==========" U" C/ I- C. T- \8 P& x
  26. echo.% A2 k. a; p; F, y/ H" |0 ^9 \9 h
  27. ECHO.【须提前准备字体文件"font.ttf"放到:程序所在目录】( h% j6 A" V2 N  X
  28. echo.
    2 q4 ~3 b9 c+ C! [
  29. ECHO.▼设置编码方式:【1.Nvida硬件编码(快)】【2.软件编码(慢)】(默认:1):! s) `, u2 T' Y0 I
  30. set user_input=&set /p  user_input=$ ?+ x: t: i9 G. u9 `& a
  31. if "%user_input%"==""  set /a  user_input=14 A4 w" S8 i- O- X
  32. if "%user_input%"==" "  set user_input=&goto start
    2 c+ ?4 {" |% O
  33. :text6 |  a/ U) \. E/ F: t5 z
  34. SET fontFile=%cd%\font.ttf8 o; v" {4 H  ?; c  @
  35. if  exist %fontFile% ( echo.水印字体存在,继续操作 ) else ( echo.水印字体font.ttf不存在,请先添加 && goto start) 7 k: x$ c+ D0 d# U7 F
  36. ECHO.
    1 {$ d1 H" w8 U7 _
  37. ECHO.▼需要添加的文字水印内容:
    " a( ^8 f" F( M/ B+ b: `- g
  38. set text=&set /p  text=/ m, g2 t6 L6 }
  39. if "%text%"==""  echo.文字未设置,请重新设置 && goto text 8 A  R' W9 w# r! l
  40. if "%text%"==" " set text=&goto start4 @9 M# w9 N! c/ y3 Y% ^5 |
  41. ECHO.▼水印切换周期(帧):* s( k5 f4 J% {: {/ T7 G* p
  42. ECHO.【例:30fps的视频,3秒切换一次,填90】
    / ]; v6 e5 H$ ~
  43. set during=&set /p  during=
    " F$ D9 Q$ q) ~9 |
  44. if "%during%"==""  set /a  during=150
    6 L- j; b; c0 }7 P# l  M  }0 m. u8 \. L
  45. if "%during%"==" " set during=&goto start
    0 I4 V4 w) X$ ]
  46. ECHO.▼请填写字体大小(默认40):: Q$ h2 C- x8 w! S' [" d
  47. set fontsize=&set /p  fontsize=
    2 a8 {) n7 ~! r1 Y/ H% j% H
  48. if "%fontsize%"==""  set /a  fontsize=40
    / Q$ i1 n4 i. e4 H  |! L
  49. if "%fontsize%"==" " set fontsize=&goto start3 Y' `8 V: ^5 N+ r7 I! O
  50. ECHO.▼请填写水印字体颜色(默认white):
    8 |9 I* f2 Q8 ^7 ]1 o7 }) M
  51. set fontcolor=&set /p  fontcolor=- |1 H& F+ b: B  y9 m
  52. if "%fontcolor%"==""  set  fontcolor=white. l) l7 Q! G% Z  [" m
  53. if "%fontcolor%"==" " set fontcolor=&goto start( X$ I0 |$ o$ u. m

  54. / a, i: d/ f5 s
  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 h1 E' O# }8 `

  56. $ ^1 `; f4 p- H. @; ]" z' v* f8 ^  X
  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=软件编码)
    ' j5 c9 O" v( s  b7 u' j
  58. ECHO.%bianma%-水印文字:%text%-周期%during%-字号%fontsize%-颜色%fontcolor%8 h) N; C% H' q- t+ i
  59. ECHO.==========参数设置完成,按任意键开始,输入N重新设置==========
    / R7 M+ k9 Y! b2 o" V; y) L
  60. set  yes=&set /p  yes=3 A' `; {( C6 g+ M2 I! J& O, S
  61. if "%yes%"=="N" goto start8 d% x" H; r& z9 Y% _; H% C& K
  62. if "%yes%"=="n" goto start
    , M8 C# K3 L% X3 U6 f$ K0 `4 {8 e
  63. if "%yes%"==" " goto start
    ( ~  S0 d" A: ]. u: |
  64. ; X& ?; z, O& D% n4 O6 ]
  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 )9 u4 h! g0 G3 s" G0 m; s+ F1 b
  66. TITLE FFMPEG%bianma%完成,%cd%\该目录总共处理!sum!个视频
    4 ~9 B& b+ ?) {$ x9 n5 s
  67. echo 按任意键退出 & pause
    " t: R0 @9 Y+ J! s
  68. exit
复制代码

' ?: H3 O! Y, c' `3 L# x3 p
/ F/ l0 o4 R1 [* A8 u3 }

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

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

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

本版积分规则

Archiver|手机版|小黑屋|

GMT+8, 2026-3-21 11:55 PM , Processed in 0.091161 second(s), 26 queries .

Powered by xyh-moon X3.5

© 2001-2025 Discuz! Team.

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