|
|
- @ECHO Off & setlocal enabledelayedexpansion
: z; s& U; q7 W6 z" ] - color 0a* V- p5 S* X" d9 x6 s s) j% ?1 R
- TITLE FFMPEG批量加水印-%cd%6 L2 o, z2 F! |7 d1 d' h
- @ md download7 _/ L# v% W5 h: i) _
- @ md video
7 [6 L: g: ~ _0 ` - :start
$ k; x- M% L& _) W/ f* C0 E% K6 f( z - cls, _" E1 |( Q6 x0 p3 J
- ECHO. ┌──────雪球联盟MCN批量视频水印工具──────┐
0 A3 b2 V {: ?2 m8 Q* D$ m - ECHO.
v* }" W# Z& ^5 E+ r; ^ - ECHO. By:魏枫伦 http://www.xqmcn.com
$ o4 s9 o& G& n6 R0 G - ECHO. ) W/ c W' B! `& k
- ECHO. 视频路径/download,导出路径/video
& E6 [' A% o9 N' M a9 _ - ECHO.
5 g/ V1 }3 L7 { - echo. └──────雪球联盟MCN批量视频水印工具──────┘
7 i" c. G1 Z1 D! S Y) d - ECHO.
; I5 M$ i+ E0 a9 ` - 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 - echo.★本机支持硬件加速,显卡型号:%%b, u+ [' C0 W! c3 N6 e" O
- set /a user_input=1
& b* y0 Q7 _: l& |& P6 {0 y% o - ) || (
3 |4 z$ W$ f9 b8 s4 {$ b - echo.☆本机不支持硬件加速,默认采用软件编码
( B8 c. h! ^. M - set /a user_input=20 i' p7 M2 F( S, B) W
- goto text; S/ ~; I! w6 {. ^
- ))
& Z! R% ?% o& L - echo.
: P% k1 j6 a4 g) U$ O- X( M9 s - ECHO.==========设置开始,保持默认值请直接按回车==========/ W: I0 y( e6 V h! _
- echo.
5 w: ~' w3 n- P6 H; S - ECHO.【须提前准备字体文件"font.ttf"放到:程序所在目录】
2 S- i/ O; d- r# [6 L - echo.
! f5 K: H( ~! A$ h - ECHO.▼设置编码方式:【1.Nvida硬件编码(快)】【2.软件编码(慢)】(默认:1):9 I1 K. u* M* V5 Q j$ F
- set user_input=&set /p user_input=
9 z% E o# Q ^8 k - if "%user_input%"=="" set /a user_input=1' S' [+ H T7 y3 l
- if "%user_input%"==" " set user_input=&goto start
' g+ H& [6 X% w* n3 d3 j - :text
5 b: [. W7 C% O5 H" c - SET fontFile=%cd%\font.ttf" K+ y, u/ A' M; ^
- if exist %fontFile% ( echo.水印字体存在,继续操作 ) else ( echo.水印字体font.ttf不存在,请先添加 && goto start)
; M! v& u9 `' Z# W/ C - ECHO.* ]+ }3 B: O& V3 V6 w! g
- ECHO.▼需要添加的文字水印内容:1 q% Q" E* p( L
- set text=&set /p text=. P: R- `, B# p4 ? Q$ y
- if "%text%"=="" echo.文字未设置,请重新设置 && goto text
! G0 a) q9 C+ `, M- X - if "%text%"==" " set text=&goto start
7 U: K( Q3 s" ]5 l6 ]6 R - ECHO.▼水印切换周期(帧):& k0 b9 ~/ n: n. F# c
- ECHO.【例:30fps的视频,3秒切换一次,填90】
5 f& ]: k" ~" e( O& M. v$ Z0 c - set during=&set /p during=6 X4 m" s9 p! E6 `- D! n" }& }
- if "%during%"=="" set /a during=150
" Y" M5 L. L( `& A/ F7 _% O7 ^" ~" U - if "%during%"==" " set during=&goto start
. c) ?! S" q9 Q" O$ \ - ECHO.▼请填写字体大小(默认40):
$ P- d/ Y* m, \6 L2 h9 ] - set fontsize=&set /p fontsize=
- Z4 N- W5 g3 l2 h - if "%fontsize%"=="" set /a fontsize=40" A' ~5 A: z3 h! _+ Y& M5 k6 b1 D
- if "%fontsize%"==" " set fontsize=&goto start5 j/ ^& q2 B, a' L D1 L, }
- ECHO.▼请填写水印字体颜色(默认white):: p/ [' J! T' @5 ?. l( A
- set fontcolor=&set /p fontcolor=
7 ]5 S( q$ C. `. W1 `5 a3 X' }3 ~: l - if "%fontcolor%"=="" set fontcolor=white0 w: ^8 o+ U- l& ]8 Y: E' q
- if "%fontcolor%"==" " set fontcolor=&goto start
/ g( ]3 Q: K7 ^+ v
: R7 w; H( M K- 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 - / I6 t& ^' b: X6 ^( S1 O6 v
- 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 - ECHO.%bianma%-水印文字:%text%-周期%during%-字号%fontsize%-颜色%fontcolor%) m. j7 `, |7 E/ ~2 E, m7 X2 W+ B3 R5 h
- ECHO.==========参数设置完成,按任意键开始,输入N重新设置==========
& ?2 W& H4 I g# d- @$ N% x7 Z - set yes=&set /p yes=6 T Z8 P6 x. f9 M- O+ ^; v) F
- if "%yes%"=="N" goto start
# Q S' R: ^1 G8 m - if "%yes%"=="n" goto start
& J; G+ a- ?" a1 W4 H. _# N - if "%yes%"==" " goto start
. i% K' j) d" I5 ?
- C) G7 X0 i' m4 i I. J- P- 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 - TITLE FFMPEG%bianma%完成,%cd%\该目录总共处理!sum!个视频
6 M7 ~3 ], m; X0 Q/ T1 v - echo 按任意键退出 & pause1 X3 b3 l# g: U( X' e+ g
- exit
复制代码
! t3 W+ u9 @& d3 r+ l. L' K3 c( w- r4 c }6 w
|
|