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

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

[复制链接]

985

主题

92

回帖

5万

积分

管理员

积分
53561
发表于 2024-10-6 03:58:16 | 显示全部楼层 |阅读模式
  1. @ECHO Off & setlocal enabledelayedexpansion
    ; d8 E/ ?+ m( c
  2. color 0a  F8 b, h# `* X5 U
  3. TITLE FFMPEG批量加水印-%cd%/ Q" b8 m9 A  x
  4. @ md download
    * S; R  L* p2 f0 b
  5. @ md video
    & o# t3 j* b: c% V1 |+ z& U0 T- |
  6. :start
    + |6 y- }9 e9 z. X6 v
  7. cls
    5 h1 V, {6 ?; C. m& j5 z2 ~% u
  8. ECHO.     ┌──────雪球联盟MCN批量视频水印工具──────┐& t" ~+ T/ X, y" w/ K
  9. ECHO.                                     3 P8 B& ]% _; |& V
  10. ECHO.           By:魏枫伦  http://www.xqmcn.com 5 j1 G, W0 I) \' Q# y7 m, m
  11. ECHO.                                       
    $ |# g+ y( I. h
  12. ECHO.          视频路径/download,导出路径/video9 P* B1 i* ?9 P1 O7 e3 P' V
  13. ECHO.                               
    0 E3 q8 M/ p4 A
  14. echo.     └──────雪球联盟MCN批量视频水印工具──────┘+ m9 s5 }0 W/ ]# R* E
  15. ECHO.8 D7 U8 J7 E6 c4 z% N
  16. for /f "tokens=1,2 delims==" %%a in ('wmic path Win32_VideoController get Name /value^|findstr "Name"') do (echo %%b | findstr "NVIDIA" >nul &&(
    ; _' k4 I' w! T6 A$ j! |* M
  17.     echo.★本机支持硬件加速,显卡型号:%%b+ t4 p. a! z; o8 o/ N$ |5 g
  18.     set /a  user_input=1
    ) N- Z* u  {; n+ e1 @& U+ N
  19. ) || (
    # |$ _" [& p5 k: Y' d! N
  20.     echo.☆本机不支持硬件加速,默认采用软件编码, u( N9 S' h' T& ~# y8 o
  21.     set /a  user_input=2" K; ]7 ]0 U0 Y3 J/ V' P  r
  22.     goto text
    , O9 K1 {$ y  U
  23. ))
    + O' V4 R$ c, L' m  A
  24. echo.
    $ [; Z8 F$ [  S5 I+ ]; G
  25. ECHO.==========设置开始,保持默认值请直接按回车==========$ O! X% n7 `+ M. L3 ^- U
  26. echo." U. m- i' L0 h, b
  27. ECHO.【须提前准备字体文件"font.ttf"放到:程序所在目录】
    ' Y) f: s+ q2 H+ I
  28. echo.; E/ E- Z5 l4 Q* B
  29. ECHO.▼设置编码方式:【1.Nvida硬件编码(快)】【2.软件编码(慢)】(默认:1):. \+ G0 I( c/ A+ D0 u# h
  30. set user_input=&set /p  user_input=
    * x- f$ B. D5 O
  31. if "%user_input%"==""  set /a  user_input=10 A$ Q( k( _8 [, V
  32. if "%user_input%"==" "  set user_input=&goto start
    6 h! K" _( V. V, c* i
  33. :text
    7 @; g6 ]) k! e5 o1 `
  34. SET fontFile=%cd%\font.ttf0 E6 ]4 r3 P8 y8 l
  35. if  exist %fontFile% ( echo.水印字体存在,继续操作 ) else ( echo.水印字体font.ttf不存在,请先添加 && goto start) 2 r% H3 f+ L$ x  K
  36. ECHO.
    / X: ?' C" |+ C/ g) b$ y& r
  37. ECHO.▼需要添加的文字水印内容:
    * O, E# a: w; p3 ]! a
  38. set text=&set /p  text=" p3 W" K3 Q" r
  39. if "%text%"==""  echo.文字未设置,请重新设置 && goto text 9 W9 Q9 E: S% `8 ~0 k" t3 c( F% a
  40. if "%text%"==" " set text=&goto start
    . R/ j. A( h' T9 s2 E' d. f: Q" k
  41. ECHO.▼水印切换周期(帧):
    % a& t' t! P- \2 n
  42. ECHO.【例:30fps的视频,3秒切换一次,填90】9 J7 n5 J1 W' K2 b. f1 f8 }
  43. set during=&set /p  during=
    1 n) U, P. g, d! o0 d, G
  44. if "%during%"==""  set /a  during=150
    / S+ |3 \& A( D
  45. if "%during%"==" " set during=&goto start
    5 p/ r: B5 E* B/ A4 {
  46. ECHO.▼请填写字体大小(默认40):
    7 i. K, H# I# p# E
  47. set fontsize=&set /p  fontsize=
    ) G& s4 u. L( }. L. j. V
  48. if "%fontsize%"==""  set /a  fontsize=40
    % b1 ]2 y+ z- ?% t
  49. if "%fontsize%"==" " set fontsize=&goto start
    - @3 H9 V: Y. B7 @1 m: F3 F6 V
  50. ECHO.▼请填写水印字体颜色(默认white):1 P" h% j4 y, |6 k" w0 u
  51. set fontcolor=&set /p  fontcolor=
    / B+ a8 d9 |, I! X) c) E# |; K3 j
  52. if "%fontcolor%"==""  set  fontcolor=white. [2 I$ C5 B. G+ d8 @2 u$ H
  53. if "%fontcolor%"==" " set fontcolor=&goto start
    ' R8 y; C" d. X0 U5 g" U5 v: H

  54. $ N! f1 C- X8 @7 r
  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)"
    ( W) `  L$ k" Q

  56. 5 Y) R  M8 e2 I) H/ c
  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=软件编码); [6 H" B# l2 R
  58. ECHO.%bianma%-水印文字:%text%-周期%during%-字号%fontsize%-颜色%fontcolor%  u' E* k" g: a8 `; g0 d0 r
  59. ECHO.==========参数设置完成,按任意键开始,输入N重新设置==========
    # k+ i; g, k0 G$ j9 l+ d: e& s% b( o
  60. set  yes=&set /p  yes=
    0 L9 z% R- W; i! x6 t9 x
  61. if "%yes%"=="N" goto start& o4 S( r9 T1 ^2 h
  62. if "%yes%"=="n" goto start
    / g+ c( Q6 h7 Q" {
  63. if "%yes%"==" " goto start
    7 n7 v$ b: Q/ Y. r* P6 o; Y
  64.   Z* F; W1 |( Z3 F4 t
  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 )
    / W1 u' [  ~3 ^+ G- S. l' b: Z" i
  66. TITLE FFMPEG%bianma%完成,%cd%\该目录总共处理!sum!个视频 6 h8 l4 y" W4 ^
  67. echo 按任意键退出 & pause
    ! [; H% |! }# q* |: ~; B1 V
  68. exit
复制代码
& `$ j: N& e1 J

3 `5 }8 F$ L4 D) J+ ?* |

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

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

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

本版积分规则

Archiver|手机版|小黑屋|

GMT+8, 2025-11-5 01:43 AM , Processed in 0.112434 second(s), 26 queries .

Powered by xyh-moon X3.5

© 2001-2025 Discuz! Team.

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