Вы должны войти, чтобы создавать сообщения и темы.

VideoDeduplicator: Удаляем дубликаты кадров из видео

Привет, сообщество! Я создал простой BAT-скрипт на Windows под названием VideoDeduplicator, который помогает очищать видео от повторяющихся кадров. Идеально для обработки записей экрана, где много статичных моментов (типа презентаций или геймплея), чтобы сократить длину файла без потери качества.
Как это работает? Скрипт использует FFmpeg. Просто перетаскиваете видео-файл на .bat — и он автоматически:
  • Анализирует видео на дубликаты с помощью фильтра mpdecimate (удаляет кадры, которые идентичны предыдущим).
  • Перестраивает таймстампы с setpts=N/FRAME_RATE/TB для плавного воспроизведения.
  • Кодирует в H.264 с CRF 20 и VFR (variable frame rate).
  • Выводит обработанный файл с суффиксом _d в ту же папку. Прогресс отображается в консоли с таймером.

Минус на старте: Сейчас скрипт полностью удаляет аудио (-an), потому что я не разобрался, как синхронизировать звук красиво. Хотелось бы, чтобы звук "обрезался" только в местах, где вырезаются кадры (или чтобы дубликаты не удалялись, если есть речь/звуки). Но как это реализовать в FFmpeg — не знаю.

Жду ваших рекомендаций и пожеланий!  Если кто-то доработает идею (например, фикс с аудио) — буду очень рад!

VideoDeduplicator

Лайкнули Латук и Удаленный пользователь
ЛатукУдаленный пользователь

Привет. Попробуй так:

Скопированоstart /b "" "!FFMPEG!" -i "!INPUT!" -vf "mpdecimate,setpts=N/FRAME_RATE/TB" -c:v libx264 -preset slow -crf 20 -vsync vfr -c:a copy -progress "!PROGRESS_FILE!" -loglevel error -y "!OUTPUT!"

Для кодирования без потерь: Скопировано-c:v libx264 -preset ultrafast -crf 0 (Быстрее, но файл больше).

Лайкнул Psydiant
Psydiant

Привет. есть байтник видео 60 кадров делает? или эту сбропку добавить