Компрессия видео с минимальной потерей качества
На веб сайтах и в мобильных приложениях все чаще стала использоваться 3d графика с анимацией, которая внедряется в видеоформате, а при загрузке видеошотов на Dribbble или загрузке NFT в формате видео, и многих других кейсах, есть жесткие ограничения по размеру загружаемого видео файла. Поэтому при подготовке видео ассетов нужно добиться максимального сжатия видео файла с минимальной потерей качества, что увеличит скорость загрузки.
Для компрессии можно использовать различное программное обеспечение, но лучшей компрессии видео с минимальной потерей качества я добился при помощи мощной кроссплатформенной библиотеки ffmpeg с открытым исходным кодом. Библиотека является бесплатной и работает через терминал. Ниже я покажу как ее можно установить и собственно осуществить конверсию видео.
Установка ffmpeg
1. Запускаем терминал на macOS
Нажмите COMMAND + SPACE, и введите Terminal
2. Устанавливаем Homebrew
Homebrew (brew) – это бесплатный менеджер пакетов с открытым исходным кодом, который позволяет устанавливать приложения и программное обеспечение в macOS
Для macOS High Sierra, Sierra, El Capitan и более ранних версий, выполните следующую команду:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Для MacOS Catalina, macOS Mojave и macOS Big Sur, выполните следующую команду:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
3. Устанавливаем пакет ffmpeg
Для установки ffmpeg выполните следующую команду:
brew install ffmpeg
Компрессия видео
После установки ffmpeg, загрузите видеофайл в папку Downloads и для осуществления компрессии видео выполните следующую команду:
ffmpeg -i /Users/Username/Downloads/Videofile.mp4 -vcodec libx264 -crf 24 /Users/Username/Downloads/compressed-videofile.mp4
-i: /Users/Username/Downloads/Videofile.mp4 - путь к видеофайлу.
-vcodec - кодек экспорта.
-crf - определяет уровень сжатия. Более низкое значение означает меньший уровень сжатия и следовательно больший размер файла. Я использую значения в диапазоне 20-30. Мой алгоритм: сперва пробую 30, и если вижу значительное ухудшение качества, то снижаю до 20, но в основном использую 24.
-/Users/Username/Downloads/compressed-videofile.mp4 - название и путь к новому компрессированному видеофайлу.
Результат