|
|
- @ECHO Off & setlocal enabledelayedexpansion$ w6 @7 ^! e5 a2 j$ M- N+ u5 Y+ m
- color 0a2 X$ ~% O. Q( R( o
- TITLE FFMPEG批量加水印-%cd%
`" t0 W! r6 w v - @ md download) Z- K$ T% _- m! ^5 z! z
- @ md video+ b! c2 ^7 l! x, c* {0 t# t9 V
- :start* r6 o5 X* ^9 j& d
- cls3 k* q" ~- h: @! _
- ECHO. ┌──────雪球联盟MCN批量视频水印工具──────┐& B! ~0 s* T; I+ a Q
- ECHO. % W. L( h$ c; T( ~ N% q
- ECHO. By:魏枫伦 http://www.xqmcn.com 5 h+ o* f7 [' ]5 Y: J
- ECHO.
3 n$ I$ Q. \& |. Z( u* Y9 e - ECHO. 视频路径/download,导出路径/video
% Y/ e2 t; d/ Z - ECHO.
6 M6 R& F6 S% w/ f" _ - echo. └──────雪球联盟MCN批量视频水印工具──────┘
( y; G' Z i. t4 C, a. m - ECHO.; T* p, C5 [$ b N) d! ^9 u
- for /f "tokens=1,2 delims==" %%a in ('wmic path Win32_VideoController get Name /value^|findstr "Name"') do (echo %%b | findstr "NVIDIA" >nul &&(- Z% @% o$ _( n
- echo.★本机支持硬件加速,显卡型号:%%b
5 Z2 o b+ B$ i$ i1 E/ K - set /a user_input=1
9 Z! T: N5 F4 k4 p - ) || (6 V3 a7 E3 I" s) k
- echo.☆本机不支持硬件加速,默认采用软件编码( y; B% o3 b; a3 \
- set /a user_input=2
: H1 U; F; f) y2 s, b9 _* B+ m - goto text X0 `6 ]! V0 x+ n
- ))4 C3 s- A1 G% p) r) c9 x$ w8 y
- echo.5 _5 C- Y8 y, U4 D, A( {" a
- ECHO.==========设置开始,保持默认值请直接按回车==========3 `$ B/ x$ |" y$ P3 H* U# p1 ~# W9 N
- echo.
- D5 }' m. V9 ~5 B1 @. L - ECHO.【须提前准备字体文件"font.ttf"放到:程序所在目录】 j5 ?3 p( f( Y5 B7 [
- echo.
) s2 a% N# ?' L/ T: G - ECHO.▼设置编码方式:【1.Nvida硬件编码(快)】【2.软件编码(慢)】(默认:1): z" s O/ O7 u
- set user_input=&set /p user_input=
# T( K8 [ R0 l' y: j - if "%user_input%"=="" set /a user_input=1
# v. `7 T& Z6 s2 G4 R0 L - if "%user_input%"==" " set user_input=&goto start2 z) z8 j5 N, h( a" `
- :text+ O0 ]9 R! A- s0 R; e- c% }
- SET fontFile=%cd%\font.ttf
* r1 {3 k& @5 M7 v; q3 q" @0 H. r3 b6 } - if exist %fontFile% ( echo.水印字体存在,继续操作 ) else ( echo.水印字体font.ttf不存在,请先添加 && goto start) ( _2 g2 R# z/ k( W! W
- ECHO.0 f2 S2 c' R1 U5 m5 m
- ECHO.▼需要添加的文字水印内容:
% `- |3 Q+ d1 R e - set text=&set /p text=) ?9 S' O E" ]7 K& ^6 P9 N
- if "%text%"=="" echo.文字未设置,请重新设置 && goto text
( X+ Q& T3 d" H: d! } - if "%text%"==" " set text=&goto start* M8 {2 F& [: i0 B* x, F
- ECHO.▼水印切换周期(帧):6 @. j$ K" y9 G$ e5 u' x# H
- ECHO.【例:30fps的视频,3秒切换一次,填90】. i, r3 `% C0 S( f1 ]/ n. G, e5 m! N
- set during=&set /p during=; a8 f, s' S: @. l
- if "%during%"=="" set /a during=150! u; b# G( h, j: C
- if "%during%"==" " set during=&goto start
N2 A# X/ _9 A - ECHO.▼请填写字体大小(默认40):5 ^1 L6 b# r) S9 L# ` D
- set fontsize=&set /p fontsize=
6 }* K- e! q; v7 J0 r" ^ - if "%fontsize%"=="" set /a fontsize=40
0 i7 l; f1 ~ o* k6 t9 r% s. L - if "%fontsize%"==" " set fontsize=&goto start
, u" Y, S$ K- y3 P - ECHO.▼请填写水印字体颜色(默认white):+ N- V d( z6 I+ Z& W6 X @
- set fontcolor=&set /p fontcolor=- M; T3 Z6 J4 @0 h& y
- if "%fontcolor%"=="" set fontcolor=white- \1 A9 v" n- H$ M( R6 s
- if "%fontcolor%"==" " set fontcolor=&goto start+ R. J8 a/ e+ J+ j, D
- H' X; d7 k! n! L
- 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)"/ y5 a) ^$ H7 Z1 J/ z
8 r' `/ ~$ s% D3 U h% L# k- 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* `8 P4 M* L) ~) X( x - ECHO.%bianma%-水印文字:%text%-周期%during%-字号%fontsize%-颜色%fontcolor%8 t; w+ [9 T3 M' a/ R
- ECHO.==========参数设置完成,按任意键开始,输入N重新设置==========3 `6 n. W+ ~+ T' q' s9 @' E8 t- ?3 n
- set yes=&set /p yes=
) v7 v7 d. M2 a* v# l - if "%yes%"=="N" goto start+ L5 ~( Y% O. h f" X5 M% B
- if "%yes%"=="n" goto start5 |4 G1 q5 X. b9 [6 M/ y/ k
- if "%yes%"==" " goto start5 k2 T) z. d9 ]! ]9 D) Z' ^* U
0 L* j1 m0 H5 M3 R0 `* z- 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 )
7 \. r& {, l) Q) R' q0 R6 ]/ t - TITLE FFMPEG%bianma%完成,%cd%\该目录总共处理!sum!个视频 8 h( N' n5 z+ E4 N/ y
- echo 按任意键退出 & pause
9 n; v, O! L* n - exit
复制代码
$ `2 ]% u- L1 H( |! S1 E9 M5 `/ T7 ~7 n6 R
|
|