Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @echo off
- rem about 3megabyte in bit 3*1024*1024*8*0.95
- set /A MAXSIZE=23907532
- set WIDTH=1080
- ffmpeg -i %1 2> webm.tmp
- for /F "tokens=1,2,3,4,5,6 delims=:., " %%i in (webm.tmp) do (
- if "%%i"=="Duration" call :calcLength %%j %%k %%l %%m
- )
- del webm.tmp
- SET /a BITRATE=%MAXSIZE%/%VSECONDS%
- ffmpeg -y -i %1 -threads 0 -sn -an -c:v libvpx -b:v %BITRATE% -vf scale=-1:%WIDTH% -quality best -cpu-used 0 -slices 8 -auto-alt-ref 1 -f webm -pass 1 NUL
- ffmpeg -y -i %1 -threads 0 -sn -an -c:v libvpx -b:v %BITRATE% -vf scale=-1:%WIDTH% -quality best -cpu-used 0 -slices 8 -auto-alt-ref 1 -f webm -pass 2 "%~n1.webm"
- del ffmpeg2pass-0.log > NUL
- goto :EOF
- :calcLength
- FOR /F "tokens=* delims=0" %%A IN ("%3") DO SET /A s=%%A
- FOR /F "tokens=* delims=0" %%A IN ("%2") DO SET /A s=s+%%A*60
- FOR /F "tokens=* delims=0" %%A IN ("%1") DO SET /A s=s+%%A*60*60
- set /A VSECONDS=s
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement