FFmpeg: установка и базовое использование¶
FFmpeg — это свободный набор программ с открытым исходным кодом для обработки аудио- и видеоданных: кодирования, декодирования, транскодирования, мультиплексирования, демультиплексирования, фильтрации и потоковой передачи. Набор поддерживает сотни кодеков и форматов контейнеров, работает в ОС Linux, Windows и macOS, распространяется по лицензии LGPL/GPL и является одним из наиболее широко используемых мультимедийных инструментов в серверных и десктопных сценариях.
¶Состав пакета
После установки в систему появляется несколько исполняемых файлов:
| Компонент | Назначение |
|---|---|
ffmpeg | Основной инструмент кодирования, декодирования и транскодирования |
ffprobe | Анализ медиафайлов: потоки, метаданные, длительность |
ffplay | Простой плеер на базе SDL |
ffserver | Устаревший стриминговый сервер (исключён из актуальных версий) |
¶Установка в Linux
¶Ubuntu и Debian
В официальных репозиториях доступны два варианта пакета: стабильный ffmpeg и более свежая сборка из PPA.
``bash sudo apt update sudo apt install ffmpeg ``
Для более новых версий можно добавить PPA:
``bash sudo add-apt-repository ppa:savoury1/ffmpeg4 sudo apt update sudo apt install ffmpeg ``
¶Fedora
``bash sudo dnf install ffmpeg-free ``
Полная сборка с непатентованными кодеками доступна из RPM Fusion:
``bash sudo dnf install --nogpgcheck \ https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm sudo dnf install ffmpeg ``
¶Arch Linux
Полноценный пакет присутствует в репозитории extra:
``bash sudo pacman -S ffmpeg ``
¶CentOS и RHEL
В официальных репозиториях CentOS/RHEL FFmpeg отсутствует. Рекомендуется использовать EPEL и RPM Fusion:
``bash sudo yum install epel-release sudo yum install --nogpgcheck \ https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm sudo yum install ffmpeg ``
¶Установка в Windows
Существует три основных способа.
¶Готовые сборки
На сайте проекта (ffmpeg.org) и на вендорных зеркалах (gyan.dev, BtbN) публикуются статические сборки для Windows. Порядок действий:
- Скачать архив
ffmpeg-release-essentials.zip(илиfullдля расширенного набора кодеков). - Распаковать в каталог, например
C:\ffmpeg. - Добавить путь
C:\ffmpeg\binв переменную средыPATH:
- «Параметры» → «Система» → «Дополнительные параметры системы» → «Переменные среды»;
- в списке «Системные переменные» найти
Path, нажать «Изменить», добавить строкуC:\ffmpeg\bin.
- Открыть новое окно командной строки или PowerShell и проверить:
``cmd ffmpeg -version ``
¶Chocolatey
``cmd choco install ffmpeg ``
¶winget
``cmd winget install Gyan.FFmpeg ``
¶Установка в macOS
Через менеджер пакетов Homebrew:
``bash brew install ffmpeg ``
Homebrew автоматически подтянет зависимости (например, x264, x265, libvpx) и настроит сборку.
¶Проверка установки
После завершения установки на любой платформе выполняется команда:
``bash ffmpeg -version ``
Корректный ответ содержит строку вида ffmpeg version 6.1.1 ... и список включённых библиотек. Для проверки доступных кодеков и форматов:
``bash ffmpeg -codecs ffmpeg -formats ffmpeg -hwaccels ``
¶Базовое использование
Типовой синтаксис:
``bash ffmpeg [глобальные опции] -i входной_файл [опции вывода] выходной_файл ``
Распространённые операции:
- Перекодирование в MP4 с копированием потоков:
``bash ffmpeg -i input.mkv -c copy output.mp4 ``
- Перекодирование видео в H.264 с качеством CRF 23:
``bash ffmpeg -i input.mkv -c:v libx264 -crf 23 -c:a aac output.mp4 ``
- Извлечение аудиодорожки в MP3:
``bash ffmpeg -i input.mkv -vn -c:a libmp3lame -q:a 2 output.mp3 ``
- Создание GIF из видео:
``bash ffmpeg -i input.mp4 -vf "fps=10,scale=480:-1" output.gif ``
- Информация о файле через
ffprobe:
``bash ffprobe -v error -show_format -show_streams input.mkv ``
¶Возможные проблемы
- Кодеки отсутствуют в списке — сборка скомпилирована без соответствующей библиотеки; следует установить полную сборку или пересобрать из исходников.
- Ошибка «command not found» — путь к каталогу
binне добавлен вPATH; на Windows требуется перезапуск оболочки. - Медленная работа — не используются аппаратные ускорители; можно добавить
-hwaccel autoили указать конкретный ускоритель (cuda,vaapi,qsv).
¶Сборка из исходников
Для получения актуальной версии или нестандартного набора библиотек:
``bash sudo apt install build-essential yasm nasm pkg-config libx264-dev libx265-dev git clone https://git.ffmpeg.org/ffmpeg.git cd ffmpeg ./configure --enable-gpl --enable-libx264 --enable-libx265 make -j$(nproc) sudo make install ``
¶Источники
- Официальный сайт FFmpeg: ffmpeg.org
- Документация FFmpeg: ffmpeg.org/documentation.html
- Руководство по компиляции FFmpeg
- Справочник по опциям командной строки ffmpeg
