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

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

[复制链接]

989

主题

92

回帖

5万

积分

管理员

积分
55362
发表于 2024-10-6 03:58:16 | 显示全部楼层 |阅读模式
  1. @ECHO Off & setlocal enabledelayedexpansion
    1 R* w5 V4 |+ _
  2. color 0a* k4 Y* I; Y$ r: e) J: n
  3. TITLE FFMPEG批量加水印-%cd%( W' |; Y; ~/ u$ C6 a* C
  4. @ md download
    3 j) u: ~7 R, W0 |) Y" T
  5. @ md video
    4 ]7 o, e' D4 N, N) C
  6. :start
    3 {2 q, F$ _" q- h
  7. cls) q% z: Z: Y. o/ \  p; e0 ^) ~- u. H
  8. ECHO.     ┌──────雪球联盟MCN批量视频水印工具──────┐% w5 m% g4 ?% }5 _) j
  9. ECHO.                                     
    2 K3 p. D; ~9 l! d+ A& V
  10. ECHO.           By:魏枫伦  http://www.xqmcn.com ) ^) y7 f2 X3 |. k" M
  11. ECHO.                                       
    & `9 J* [; x& {6 Q6 Q" D' U
  12. ECHO.          视频路径/download,导出路径/video
    : G0 K4 W7 u( Q
  13. ECHO.                               
    0 X$ B# e, z: }" c' l) ^7 O; e
  14. echo.     └──────雪球联盟MCN批量视频水印工具──────┘
    8 M6 s: N3 z1 o0 o- X+ E
  15. ECHO.
    * U5 a3 [2 ~0 Q1 R9 S* k  E
  16. for /f "tokens=1,2 delims==" %%a in ('wmic path Win32_VideoController get Name /value^|findstr "Name"') do (echo %%b | findstr "NVIDIA" >nul &&(
    ' a* F8 ^, H" b9 v3 t/ t  x
  17.     echo.★本机支持硬件加速,显卡型号:%%b
    8 u& c& l; f, g# h8 d5 y
  18.     set /a  user_input=10 B8 m& {+ p6 z- Z1 Z; ~! W& f) w
  19. ) || (
    & j3 A; \1 S  N+ u" }
  20.     echo.☆本机不支持硬件加速,默认采用软件编码
    ' Q) x3 F- ~: G0 a
  21.     set /a  user_input=2
    , V+ x0 F% r, Z" n; ?: V  A% r) a
  22.     goto text
    ; [3 T0 ]* Q6 Z
  23. ))" k' B! S3 z' ^7 Q" C7 x( f( z7 G7 K
  24. echo.- x. U5 c+ u5 ]3 k# _& ~: d
  25. ECHO.==========设置开始,保持默认值请直接按回车==========
    , s8 z) t1 _6 C1 ~; d
  26. echo.% k9 R1 y2 m. @! G( E, O4 e& }
  27. ECHO.【须提前准备字体文件"font.ttf"放到:程序所在目录】9 B1 K3 l3 G! g# z1 h4 y
  28. echo.# E) S/ n- k% ?( J+ Z5 r
  29. ECHO.▼设置编码方式:【1.Nvida硬件编码(快)】【2.软件编码(慢)】(默认:1):
    - G+ M9 l4 p) ]; J" X
  30. set user_input=&set /p  user_input=
    7 `6 z6 o: b, B6 }) f7 a
  31. if "%user_input%"==""  set /a  user_input=1
    . U+ O: i6 {* v
  32. if "%user_input%"==" "  set user_input=&goto start
    7 O' M. O& k5 r* q8 y0 G0 X
  33. :text7 \9 @( n! M$ y
  34. SET fontFile=%cd%\font.ttf
    ! P. @: ?1 g9 b& h$ ^2 k* R. Y
  35. if  exist %fontFile% ( echo.水印字体存在,继续操作 ) else ( echo.水印字体font.ttf不存在,请先添加 && goto start) ) @* s: F; L+ T& a; f
  36. ECHO.
    ) U" i. }  \6 c, `7 D6 d5 ?
  37. ECHO.▼需要添加的文字水印内容:
      |9 P- F4 B2 \$ V" g/ ?9 Y) E9 l
  38. set text=&set /p  text=
    ) ?+ y( B8 h0 a% t1 h
  39. if "%text%"==""  echo.文字未设置,请重新设置 && goto text + B* Z4 ~# m! K& x, b. C; _
  40. if "%text%"==" " set text=&goto start
    7 W9 l8 d, p1 S5 ~* V0 n
  41. ECHO.▼水印切换周期(帧):
      d' T1 M8 y1 Z1 k# O1 W
  42. ECHO.【例:30fps的视频,3秒切换一次,填90】
    : q( B. i, t% |
  43. set during=&set /p  during=
    ( f/ J, e$ {: O  z- v/ a% X& E2 \
  44. if "%during%"==""  set /a  during=150
    3 V6 Y! i  \/ y
  45. if "%during%"==" " set during=&goto start
    5 e- A% R( Z3 a4 K& p% g
  46. ECHO.▼请填写字体大小(默认40):6 W0 {- n) P; I6 [* W+ b2 R1 {9 |
  47. set fontsize=&set /p  fontsize=
    , q' A1 [2 @7 l6 b: A. V
  48. if "%fontsize%"==""  set /a  fontsize=40
    " @2 u: i& X$ `3 W. F
  49. if "%fontsize%"==" " set fontsize=&goto start4 O8 \( h7 i! _2 u: M* D2 i
  50. ECHO.▼请填写水印字体颜色(默认white):2 Y+ ^% m7 P8 a5 M! J( F
  51. set fontcolor=&set /p  fontcolor=
    . K4 D0 z; _$ U4 w7 `( {
  52. if "%fontcolor%"==""  set  fontcolor=white
    & s1 g. C5 N1 _* X) w$ b# y
  53. if "%fontcolor%"==" " set fontcolor=&goto start
    + H3 x2 s: H$ P2 t

  54. * H4 H+ k+ z; _* O: a  |
  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)"8 u8 n/ N, b9 Z( _! j
  56. % z- [5 x1 m0 K( o2 f7 i
  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=软件编码)
    / T0 [0 ?2 S* x* c. f& g
  58. ECHO.%bianma%-水印文字:%text%-周期%during%-字号%fontsize%-颜色%fontcolor%( c& q  [4 F! d" X* F% ^7 p' Y
  59. ECHO.==========参数设置完成,按任意键开始,输入N重新设置==========% b" Q  ]) g! U# i  g
  60. set  yes=&set /p  yes=
    ( b) f8 h9 b( `: n
  61. if "%yes%"=="N" goto start
    1 m5 M# V* P9 a. o
  62. if "%yes%"=="n" goto start$ B) e0 R! X- j, D8 z, }
  63. if "%yes%"==" " goto start! _% G' j/ Y- _" [! F1 _$ k
  64. % g- y. ]5 a! d2 J/ o' ?
  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 )# {( N9 I! L( q5 r
  66. TITLE FFMPEG%bianma%完成,%cd%\该目录总共处理!sum!个视频 9 Z4 N6 w, E6 K1 U+ j$ l
  67. echo 按任意键退出 & pause
    7 z  ?6 X; x6 s- a/ e) p
  68. exit
复制代码
3 A% |) k: F8 y$ H; [
; o# @/ U8 d4 F! C7 R4 a

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

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

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

本版积分规则

Archiver|手机版|小黑屋|

GMT+8, 2026-5-6 11:21 AM , Processed in 0.098920 second(s), 26 queries .

Powered by xyh-moon X3.5

© 2001-2025 Discuz! Team.

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