Знакомая ситуация: нужно быстро сжать видос для Телеграма или Дискорда. Открываешь первый попавшийся сайт из гугла, ждёшь загрузку... а дальше классика:
«Зарегистрируйтесь, чтобы скачать»
«Бесплатно только с водяным знаком на пол-экрана»
«Файл обрабатывается на нашем сервере»
Меня это достало настолько, что я решил разобраться, можно ли делать всё это прямо в браузере, без загрузки куда-либо. Оказалось — можно.
Что за технология
Современные браузеры умеют гораздо больше, чем показывать котиков. В них уже встроены технологии для работы с видео: WebCodecs для быстрого аппаратного кодирования и FFmpeg, скомпилированный под WebAssembly. Грубо говоря, вместо того чтобы гонять гигабайты на чужой сервер, браузер сам становится видеоредактором.
Файл не покидает твой компьютер. Вообще. Я не вижу твоё видео, сервер не видит твоё видео, оно просто обрабатывается у тебя локально и скачивается обратно.
Что сделал
Написал сервис (ссылку оставлю в конце). Собрал туда инструменты, которыми сам постоянно пользуюсь:
Сжать видео - три пресета, выбираешь баланс качества и размера
Обрезать по времени - быстрый режим или точный (покадровый)
Изменить разрешение - пресеты 1080p/720p/480p или свой размер
Изменить скорость - от 0.25x до 8x
Повернуть на 90°/180°/270° или отразить
Кадрировать - вырезать нужную область кадра
Конвертация:
MP4 в GIF — с нормальной палитрой, а не размытым месивом
—MOV → MP4, AVI → MP4, WebM → MP4
Работа с аудио:
Вытащить аудио в MP3 или WAV
Почему бесплатно и без рекламы
Потому что делаю для себя и таких же, как я. Нет серверных расходов на обработку — вся работа на твоём железе. Мне не нужно содержать ферму серверов, которая жуёт видео круглосуточно.
Сервис работает даже без интернета после первой загрузки страницы (ну, почти — статику-то надо подгрузить).
Ограничения
Не буду врать, что всё идеально:
1. Скорость зависит от мощности твоего компьютера. На слабых ноутах длинные видео будут обрабатываться дольше, чем на мощных серверах.
2. Safari и Firefox иногда тупят с аудиокодеками, там используется гибрид FFmpeg+WebCodecs(работает, но не идеально).
3. GIF ограничен 30 секундами, иначе файл раздувается до неприличных размеров.
Проект делается на энтузиазме. Хочется понять, нужно ли это кому-то кроме меня.
Буду благодарен, если потестите, понагружаете и напишете в комментах:
Что сломалось (браузер, ОС, что делали)
Попробовать можно тут: vidocean.ru
UPD:
Спасибо за безумный актив! Вас 80 тысяч, я в шоке. Из-за блокировок РКН сайт может не открываться с мобильного интернета и у некоторых провайдеров. Я уже решаю вопрос с переездом на ру-сервера. Пока пользуйтесь через Wi-Fi или с компа. Скоро всё починим!
05.01.2025. Сайт теперь работает везде. В новой статье я рассказал о том, что исправил. Поддержать вы меня можете по ссылке: https://pay.cloudtips.ru/p/cdf123e9