Гайд в 3 шага: Как перетаскиванием сжать видео до 100 мб (или меньше/больше)

Гайд в 3 шага: Как перетаскиванием сжать видео до 100 мб (или меньше/больше)

1. Устанавливаем ffmpeg

Жмякаем Win+R

Пишем winget install ffmpeg

Жмякаем Enter

2. Создаем .txt файл с любым названием

В него вставляем вот это:

Чтоб поменять желаемый размер со 100 мб на любой другой, измени переменную KEKW

Фугля
@echo off setlocal enabledelayedexpansion chcp 65001 >nul REM Проверить если засунули if "%~1"=="" ( echo ПЕРЕТАЩИ ВИДОС НА ИКОНКУ СКРИПТА ОООоОООо pause exit /b ) REM Тут поменяй 100 на сколько хочешь set "KEKW=100" set "INPUT=%~1" set "FOLDER=%~dp1" set "BASENAME=%~n1" set "OUTPUT=%FOLDER%%BASENAME%_%KEKW%mb.mp4" REM Размер файла в байтах for %%F in ("%INPUT%") do set "FILESIZE=%%~zF" set /a FILESIZE_MB=%FILESIZE%/1024/1024 echo. echo ############################################################################################################## echo Исходный размер твоего шедевра: %FILESIZE_MB% МБ echo ############################################################################################################## echo. REM Если меньше или равно 100 МБ — просто копируем if %FILESIZE_MB% LEQ %KEKW% ( echo РАЗМЕР видоса меньше или равен 100 МБ pause exit /b ) REM Получаем длину (не пиписьки) for /f "delims=" %%A in ('ffprobe -v error -show_entries format^=duration -of default^=nokey^=1:noprint_wrappers^=1 "%INPUT%"') do ( set "DURATION=%%A" ) for /f "tokens=1 delims=." %%A in ("%DURATION%") do set "DURATION_INT=%%A" REM Цель получить 100 мб (можешь менять хоть на сколько угодно) (100 MB = 100 * 8 * 1024 = 819200 kb) set /a TARGET_SIZE_KBITS=%KEKW%*8*1024 REM Какулируем битрейт set /a BITRATE=%TARGET_SIZE_KBITS% / %DURATION_INT% REM Резервируем место для звукинга set /a VIDEO_BITRATE=%BITRATE% - 128 echo ############################################################################################################## echo Сжимаем "%INPUT%" до ~%KEKW% MB... echo Длина (пиписьки): %DURATION_INT% секунд (сантиметров) echo Всего битрейт: %BITRATE% kbps echo Видео рейтбит: %VIDEO_BITRATE% kbps echo Аудио ритбейт: 128 kbps echo ############################################################################################################## echo. echo ############################################################################################################## echo АНАЛ-ЛИЗИРУЕМ ЧО КАВО echo ############################################################################################################## echo . ffmpeg -y -hide_banner -loglevel error -stats -i "%INPUT%" -c:v libx264 -b:v %VIDEO_BITRATE%k -pass 1 -an -f mp4 NUL echo . echo ############################################################################################################## echo С РЕЗУЛЬТАТАМИ АНАЛ-ЛИЗА ИДЕМ ВО ВТОРОЕ ОКНО echo ############################################################################################################## echo . ffmpeg -hide_banner -loglevel error -stats -i "%INPUT%" -c:v libx264 -b:v %VIDEO_BITRATE%k -pass 2 -c:a aac -b:a 128k "%OUTPUT%" echo . echo ############################################################################################################## echo ПОДМЫВАЮСЬ ЗА СОБОЙ И ТЕБЕ СОВЕТУЮ ПОПУ МЫТЬ ПОПУ МЫТЬ НАДО КАЖДЫЙ ДЕНЬ ПОПУ МЫТЬ ПОПУ МЫТЬ ДАЖЕ ЕСЛИ ЛЕНЬ echo ############################################################################################################## echo . del ffmpeg2pass-0.log 2>nul del ffmpeg2pass-0.log.mbtree 2>nul echo Готовый видос тут: "%OUTPUT%" echo . pause

Сохраняем, закрываем и меняем расширение файла на .bat

3. Засоряем сервер DTF своими видосиками

Для этого перетащи свой чудеснейший видеоряд прям на созданный .bat файл и беги заливать!

До новых встреч!

4
1