FFmpeg — это, пожалуй, самая недооценённая утилита в мире обработки медиа. Одна бесплатная консольная программа без единой кнопки в интерфейсе умеет то, за что онлайн-сервисы просят подписку: конвертирует форматы, режет и склеивает файлы, меняет громкость, чистит шум и делает это буквально за секунды — без загрузки куда-либо и без потери качества.
Проблема в том, что документация FFmpeg — это несколько тысяч флагов, разбросанных по мануалам, и разобраться в них с нуля тяжело. В этой статье собраны самые нужные и рабочие команды именно для звука: от простой конвертации до нормализации громкости и удаления тишины. Копируйте и пользуйтесь.
Почему FFmpeg такой быстрый
В отличие от программ с графическим интерфейсом, FFmpeg не тратит ресурсы на отрисовку окон, превью и анимации. Это низкоуровневая библиотека на C, которая работает напрямую с потоками аудио и видео и по возможности использует аппаратное ускорение и многопоточность процессора. Именно поэтому конвертация часового аудиофайла занимает секунды, а не минуты — вся мощность железа уходит строго на вычисления, а не на интерфейс.
Второй секрет скорости — потоковая обработка. FFmpeg не загружает файл целиком в память, а обрабатывает его блоками «на лету», поэтому даже гигабайтные записи открываются почти мгновенно и не упираются в объём оперативной памяти.
Установка FFmpeg
Проще всего скачать готовую сборку с официального сайта ffmpeg.org и добавить путь к папке bin в переменную окружения PATH — тогда команду ffmpeg можно будет вызвать из любой папки. После установки проверьте версию:
ffmpeg -versionБазовые команды: конвертация форматов
1. Конвертировать формат аудио
ffmpeg -i input.wav output.mp3Формат определяется просто по расширению файла на выходе. Так же легко конвертируется в WAV, FLAC, OGG, M4A и любой другой поддерживаемый формат.
2. Извлечь звук из видео
ffmpeg -i video.mp4 -vn -acodec copy audio.aacФлаг -vn отключает видеопоток, а -acodec copy копирует звук без перекодирования — операция занимает буквально доли секунды, так как файл не пересжимается.
3. Изменить битрейт (качество) файла
ffmpeg -i input.mp3 -b:a 192k output.mp3Чем выше битрейт (128k, 192k, 320k), тем лучше качество звука и больше размер файла.
4. Изменить частоту дискретизации
ffmpeg -i input.wav -ar 44100 output.wavПриводит файл к стандартной частоте 44.1 кГц — полезно, если файл записан в нестандартной частоте и не воспроизводится в некоторых плеерах.
5. Сделать аудио моно
ffmpeg -i input.wav -ac 1 output.wav-ac 1 — один канал (моно), -ac 2 — стерео. Моно-файлы для голосовых записей весят вдвое меньше без потери разборчивости речи.
Обрезка, склейка и монтаж
6. Обрезать фрагмент по времени
ffmpeg -i input.mp3 -ss 00:01:30 -to 00:03:00 -c copy output.mp3-ss — начало отрезка, -to — конец. С флагом -c copy вырезание происходит мгновенно, без перекодирования.
7. Обрезать N секунд с начала
ffmpeg -i input.mp3 -ss 10 output.mp3Убирает первые 10 секунд файла — удобно срезать тишину или отсчёт в начале записи.
8. Склеить несколько файлов в один
ffmpeg -f concat -safe 0 -i list.txt -c copy output.mp3В list.txt построчно указываются пути к файлам в формате file 'part1.mp3'. Все файлы должны быть в одном формате и кодеке.
9. Добавить плавное появление и затухание звука
ffmpeg -i input.mp3 -af "afade=t=in:st=0:d=3,afade=t=out:st=57:d=3" output.mp3Плавное нарастание громкости (fade in) первые 3 секунды и плавное затухание (fade out) в конце — параметр st задаёт секунду начала эффекта.
Громкость и нормализация
10. Увеличить или уменьшить громкость
ffmpeg -i input.mp3 -filter:a "volume=1.5" output.mp3volume=1.5 — увеличивает громкость в 1.5 раза, volume=0.5 — уменьшает вдвое.
11. Нормализовать громкость по стандарту вещания
ffmpeg -i input.mp3 -af loudnorm=I=-16:TP=-1.5:LRA=11 output.mp3Фильтр loudnorm приводит громкость к единому стандарту (используется на подкаст-платформах и стриминге), убирая резкие перепады между тихими и громкими участками.
12. Автоматически выровнять пиковую громкость
ffmpeg -i input.mp3 -filter:a "dynaudnorm" output.mp3dynaudnorm динамически подтягивает тихие участки без резких скачков — хорошо подходит для интервью с несколькими спикерами разной громкости.
Шум, тишина и очистка
13. Убрать статичный фоновый шум
ffmpeg -i input.wav -af "afftdn=nf=-25" output.wavФильтр afftdn (FFT denoiser) убирает ровный шум — гул кондиционера, шипение микрофона. Параметр nf регулирует агрессивность подавления в дБ.
14. Обрезать тишину в начале и конце
ffmpeg -i input.wav -af silenceremove=start_periods=1:start_threshold=-40dB:stop_periods=1:stop_threshold=-40dB output.wavПолезно для подкастов и голосовых сообщений — автоматически срезает «мёртвый воздух» без ручного монтажа.
15. Применить эквалайзер (усилить/срезать частоты)
ffmpeg -i input.wav -af "equalizer=f=100:t=q:w=1:g=-10" output.wavСрезает частоту 100 Гц на 10 дБ — так убирают низкочастотный гул проводки или кондиционера, не трогая остальной спектр.
Скорость, тон и служебные команды
16. Ускорить или замедлить аудио без изменения тона
ffmpeg -i input.mp3 -filter:a "atempo=1.5" output.mp3atempo принимает значения от 0.5 до 2.0 за один проход — удобно для ускоренного прослушивания лекций без «эффекта бурундука».
17. Заменить аудиодорожку в видео
ffmpeg -i video.mp4 -i new_audio.mp3 -c:v copy -map 0:v:0 -map 1:a:0 output.mp4Видео остаётся без перекодирования (-c:v copy), меняется только звуковая дорожка — быстро и без потери качества картинки.
18. Получить информацию о файле (длительность, кодек, битрейт)
ffprobe -v error -show_entries format=duration,bit_rate -of default=noprint_wrappers=1 input.mp3ffprobe — утилита из того же комплекта, показывает метаданные файла без его обработки.
19. Разбить один файл на равные части
ffmpeg -i input.mp3 -f segment -segment_time 600 -c copy part_%03d.mp3Режет файл на куски по 600 секунд (10 минут) — удобно для загрузки длинных записей туда, где есть лимит по времени.
20. Массово конвертировать все файлы в папке (Bash)
for f in *.wav; do ffmpeg -i "$f" "${f%.wav}.mp3"; doneПример пакетной обработки в Linux/macOS-терминале: конвертирует сразу все WAV-файлы в папке в MP3.
Полезная памятка по ключевым флагам
- -i — входной файл.
- -ss / -to / -t — начало, конец и длительность фрагмента.
- -c copy — копировать поток без перекодирования (максимальная скорость).
- -af / -filter:a — применить аудиофильтр.
- -b:a — битрейт аудио.
- -ar — частота дискретизации.
- -ac — количество аудиоканалов.
- -map — выбор конкретного потока из файла.
Когда консоли достаточно, а когда нужен интерфейс
Для разовой конвертации или обрезки файла команд FFmpeg вполне достаточно. Но когда нужно почистить шум на живом звонке в реальном времени или сразу получить готовый текст из записи, удобнее решения с графическим интерфейсом — например, наш DeepFilter, который под капотом использует похожие принципы фильтрации звука, но без единой команды в терминале. Подробнее о самих технологиях шумоподавления и транскрибации — в других статьях нашего блога.
Итог
FFmpeg остаётся золотым стандартом обработки звука уже больше двадцати лет именно благодаря скорости и гибкости: одна команда способна заменить десяток окон в платных редакторах. Сохраните эту шпаргалку — команд из неё хватит для 90% повседневных задач с аудио, от быстрой конвертации до полноценной очистки и нормализации звука.