Гайд в 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 файл и беги заливать!