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

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

[复制链接]

979

主题

90

回帖

5万

积分

管理员

积分
53052
发表于 2024-10-6 03:58:16 | 显示全部楼层 |阅读模式
  1. @ECHO Off & setlocal enabledelayedexpansion/ [+ S: Q& F! v( M& Q  y+ [
  2. color 0a
    $ G5 n  @, I# j  ~
  3. TITLE FFMPEG批量加水印-%cd%, S- P5 r* m# p. I" x& I
  4. @ md download! R' t! ?# l" _  _$ i7 `
  5. @ md video
    ! S2 M6 F) U% g2 G! T0 E
  6. :start
    " @; w7 r7 O" a+ Y% _
  7. cls: e3 D2 |  B% i# I
  8. ECHO.     ┌──────雪球联盟MCN批量视频水印工具──────┐1 c. L( M) f( b. r3 q) d0 I+ \" E, R
  9. ECHO.                                     8 A$ ^7 @/ s7 I! S7 \( U' s
  10. ECHO.           By:魏枫伦  http://www.xqmcn.com
    ! U0 {/ C" x) ^# f& A4 K  A
  11. ECHO.                                       
    6 s: n3 w9 G, w% r
  12. ECHO.          视频路径/download,导出路径/video
    " N4 W& u' A- W2 L9 R9 A5 U
  13. ECHO.                               
    ( e$ m& K6 E. w: Y" [# P
  14. echo.     └──────雪球联盟MCN批量视频水印工具──────┘/ V' U5 Y" f6 Z: Z
  15. ECHO.4 J1 M$ u4 f3 ]' r7 x* [+ s8 \
  16. for /f "tokens=1,2 delims==" %%a in ('wmic path Win32_VideoController get Name /value^|findstr "Name"') do (echo %%b | findstr "NVIDIA" >nul &&(
    + d5 w# N7 p2 d' g% k" S, Q
  17.     echo.★本机支持硬件加速,显卡型号:%%b
    0 \) n' E3 @9 [2 l
  18.     set /a  user_input=14 b! C2 _+ v7 D+ s2 x4 n& {
  19. ) || (
    8 i2 T' v2 L* v* j' V. `
  20.     echo.☆本机不支持硬件加速,默认采用软件编码( F, f/ q1 t0 L8 R
  21.     set /a  user_input=2
    & E: v1 {4 U; N2 n, T
  22.     goto text# `) k1 i& H& v" D
  23. ))
    2 ~; n0 [2 J& A. s4 i# H
  24. echo.4 e0 {7 N' U  S6 T/ o
  25. ECHO.==========设置开始,保持默认值请直接按回车==========
    8 s) O2 ^  t* I2 m
  26. echo.
    / D6 y  K+ _' l. j6 H) Q- M# w
  27. ECHO.【须提前准备字体文件"font.ttf"放到:程序所在目录】
    + M. k: e) ~1 j# k; K3 K5 E
  28. echo.
    ) p" W! K9 A% R2 D
  29. ECHO.▼设置编码方式:【1.Nvida硬件编码(快)】【2.软件编码(慢)】(默认:1):
    ( n& p" l. U* Y9 ]% U! w
  30. set user_input=&set /p  user_input=
    * `% D5 h8 P  n
  31. if "%user_input%"==""  set /a  user_input=1
    3 A/ ^- |& G' K9 t
  32. if "%user_input%"==" "  set user_input=&goto start
    9 a$ I; n7 \7 y% Q
  33. :text
    9 }) a8 R* j) Q/ l
  34. SET fontFile=%cd%\font.ttf3 k3 H5 U( [. b
  35. if  exist %fontFile% ( echo.水印字体存在,继续操作 ) else ( echo.水印字体font.ttf不存在,请先添加 && goto start)
    + I, W9 ^6 r* _1 z7 v8 E
  36. ECHO.
    * J" W$ w* \9 S! ?" Q
  37. ECHO.▼需要添加的文字水印内容:
    ) l: ]# |7 _7 ?9 n+ h( |% u1 J; C
  38. set text=&set /p  text=
    6 `+ Y- H  v" e! J: {1 T
  39. if "%text%"==""  echo.文字未设置,请重新设置 && goto text ' Z% r( t8 |( n- v2 M
  40. if "%text%"==" " set text=&goto start
    7 I$ f, J) J9 v# n% I
  41. ECHO.▼水印切换周期(帧):7 B/ Q  e0 o- ]" L, f' ]) [# T
  42. ECHO.【例:30fps的视频,3秒切换一次,填90】( g/ F+ l0 Z/ O& B" Y4 j
  43. set during=&set /p  during=5 j6 W" z7 r% _
  44. if "%during%"==""  set /a  during=150" w  I/ Y& ^$ l
  45. if "%during%"==" " set during=&goto start( U% x  O* d4 W: j9 f9 T
  46. ECHO.▼请填写字体大小(默认40):
      ~# F4 j) N7 ^$ O+ A
  47. set fontsize=&set /p  fontsize=. G+ ]4 _. O; V
  48. if "%fontsize%"==""  set /a  fontsize=40
    ' n0 z0 c1 J$ o* i5 i# J6 h
  49. if "%fontsize%"==" " set fontsize=&goto start
    1 N7 C  {' D# H# w! t6 E9 w
  50. ECHO.▼请填写水印字体颜色(默认white):
    9 p/ t; r1 b  f4 I$ k
  51. set fontcolor=&set /p  fontcolor=( a6 t( v: l! V: Y
  52. if "%fontcolor%"==""  set  fontcolor=white
    1 G& a# ~( I( |3 C" k; ^6 c
  53. if "%fontcolor%"==" " set fontcolor=&goto start
    * z* k  l! Q  G$ p/ D( ]" ?

  54. 1 G' C1 M- K6 z: f7 Y
  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)"/ m9 |4 o: H0 G, y
  56. & y5 K, g0 t+ t8 m9 g4 C6 \
  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=软件编码)
    . H4 {8 U3 E, x2 `, r0 }
  58. ECHO.%bianma%-水印文字:%text%-周期%during%-字号%fontsize%-颜色%fontcolor%
    1 `' c2 P1 E5 X6 e! ]1 b
  59. ECHO.==========参数设置完成,按任意键开始,输入N重新设置==========
    5 f' X' d) H$ f: u! Y+ o' n
  60. set  yes=&set /p  yes=6 f" b! s3 ~3 @8 f  f
  61. if "%yes%"=="N" goto start, w/ ^& S. r8 n5 u
  62. if "%yes%"=="n" goto start; f1 {/ O  p& D! ]
  63. if "%yes%"==" " goto start
    . _5 Y1 h1 ]$ ?, K* K

  64. / \" N& R2 a  o; D2 {6 f8 w
  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 )$ n) l+ c' N9 M, A5 b& s) I
  66. TITLE FFMPEG%bianma%完成,%cd%\该目录总共处理!sum!个视频 % ?: s: o. W% [% l! d
  67. echo 按任意键退出 & pause
    & |7 [) v: ]' O8 F$ Y. S+ V+ E
  68. exit
复制代码
0 c" w+ F; ?9 @! r8 \6 R. g
& t8 V& O4 T1 V  l. W- j

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

1.89 MB, 下载次数: 10

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

本版积分规则

Archiver|手机版|小黑屋|

GMT+8, 2025-2-25 00:22 , Processed in 0.079514 second(s), 25 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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