Not a member of Pastebin yet?
                        Sign Up,
                        it unlocks many cool features!                    
                - chcp 65001
 - echo off
 - cls
 - set INPUT=C:\any_video.mp4
 - rem • имя конечного файла myfile без ".gif", можно с указанием пути C:\mydir\myfile
 - set OUTPUTNAME=my_gif_file
 - rem • начало в (format 00:00:00.000)
 - set START=00:08:48.000
 - rem • длительность (format 00:00:00.000)
 - set LENGTH=00:00:03.100
 - rem • кол-во цветов: 1-256
 - set COLORS=64
 - rem • алгоритмы сглаживания границ шумом
 - rem atkinson
 - rem bayer:bayer_scale=0
 - rem bayer:bayer_scale=1
 - rem bayer:bayer_scale=2
 - rem bayer:bayer_scale=3
 - rem bayer:bayer_scale=4
 - rem bayer:bayer_scale=5
 - rem burkes
 - rem floyd_steinberg
 - rem sierra2
 - rem sierra2_4a
 - rem none
 - set DITHER=bayer:bayer_scale=2
 - rem • if enabled - only the changing rectangle will be reprocessed
 - set DIFF=:diff_mode=rectangle
 - set FILTER= -filter_complex "
 - rem • fps
 - set FILTER=%FILTER%fps=10,
 - rem • crop inputs: iw, ih, ow, oh
 - rem set FILTER=%FILTER%crop=w=640:h=480:x=1146:y=24,
 - rem • scale filters: "lanczos" for gradients, "sinc" for complex images with small details
 - rem set FILTER=%FILTER%scale=1280:-1:flags=lanczos+accurate_rnd,
 - set FILTER=%FILTER%split[a][b];
 - set FILTER=%FILTER%[a]palettegen=%COLORS%:reserve_transparent=0[p];
 - set FILTER=%FILTER%[b][p]paletteuse=%DITHER%%DIFF%
 - set FILTER=%FILTER%"
 - rem • число повторений: -1 = 1 раз; 0 = бесконечно; 1 = 2 раза; 2 = 3 раза...
 - set LOOP=0
 - rem ====== КОНЕЦ НАСТРОЕК ======
 - if exist "%INPUT%" (
 - CALL :get_source "%INPUT%"
 - ) else (
 - echo Error: input file not found.
 - pause
 - exit 0
 - )
 - :get_source
 - set ATTR=%~a1
 - set DIRATTR=%ATTR:~0,1%
 - if /I "%DIRATTR%" NEQ "d" set SOURCEDIR=%~dp1
 - if /I "%DIRATTR%" NEQ "d" set SOURCEFILE=%~n1
 - set INPUT= -i "%INPUT%"
 - :get_source_end
 - if not "%OUTPUTNAME%"=="" (
 - CALL :get_target %OUTPUTNAME%
 - ) else (
 - set OUTPUT= "%SOURCEDIR%%~n1 - ffmpeg.gif"
 - GOTO:get_target_end
 - )
 - :get_target
 - set TARGETDIR=%~dp1
 - if /I "%TARGETDIR%"=="%~dp0" (
 - set OUTPUT= "%SOURCEDIR%%~n1.gif"
 - ) else (
 - set OUTPUT= "%TARGETDIR%%~n1.gif"
 - )
 - :get_target_end
 - if not "%START%"=="" set START= -ss %START%
 - if not "%LENGTH%"=="" set LENGTH= -t %LENGTH%
 - set LOOP= -loop %LOOP%
 - set COMMAND=..\ffmpeg%START%%LENGTH%%INPUT%%FILTER%%LOOP%%OUTPUT% -y
 - echo %COMMAND%
 - echo.
 - %COMMAND%
 - echo.
 - echo. [1] Открыть конечный файл
 - echo. [2] Выход
 - echo.
 - choice /C:12 /N /M "Введите выбор: "
 - if errorlevel 2 exit 0
 - if errorlevel 1 (
 - start "" %OUTPUT%
 - exit 0
 - )
 - exit 0
 
Advertisement
 
                    Add Comment                
                
                        Please, Sign In to add comment