Как вытащить звук из видео
Что на самом деле требуется сделать
Запрос «вытащить звук из видео» почти всегда означает одно: файл весит гигабайт, а нужна из него только дорожка на полтора часа речи. Лекция, которую хочется дослушать в метро. Интервью, которое пойдёт в сервис автоматической расшифровки — а такие сервисы часто принимают аудио и разворачиваются от видео. Запись созвона, из которой надо выцепить пять минут обсуждения. Или собственный ролик, где играет записанная вами же музыка.
Технически задача звучит просто: в контейнере MP4 лежат две дорожки, видео и аудио, и достаточно взять вторую. На практике «взять» бывает двух видов, и разница между ними определяет всё остальное.
Первый вариант — демультиплексирование: дорожка вынимается из контейнера байт в байт, без перекодирования. Из MP4 при этом выходит файл AAC или M4A, потому что внутри лежал именно AAC, а не MP3. Так умеет ffmpeg с ключом -c copy, и качество не меняется вообще.
Второй вариант — декодировать звук и закодировать заново в MP3. Качество формально падает, зато на выходе получается формат, который открывает вообще всё: старая автомагнитола, дешёвый плеер, форма загрузки подкаста, требующая именно MP3. Именно так работает наш конвертер видео в MP3, и об этом стоит знать заранее, а не удивляться потом.
Почему второе сжатие обычно не слышно
Звук внутри видео уже сжат с потерями — AAC или Opus, редко что-то другое. MP3 сжимает его повторно, и это действительно каскадное кодирование, которого аудиофилы боятся. Страх оправдан, если понижать битрейт: дорожка AAC 128 kbps, пережатая в MP3 64 kbps, звучит заметно грязнее, особенно на тарелках и шипящих.
Практическое правило простое: берите битрейт не ниже исходного. Для типичной дорожки телефонного видео (AAC 128 kbps) хватит MP3 128 kbps. Для музыкального ролика ставьте 192 kbps и выше. Запас в один шаг вверх стоит нескольких мегабайт и снимает вопрос полностью.
Отдельная история — речь. Лекция, подкаст, запись планёрки: там нет ни высоких частот, ни стереопанорамы, и 96 kbps в моно звучит ровно так же разборчиво, как 192 kbps в стерео, но занимает вчетверо меньше. Полуторачасовая лекция в таком виде укладывается примерно в 60 МБ вместо гигабайта исходного видео.
Шаги
Страница инструмента разделена на два блока — Файл и Результат.
- В блоке Файл нажмите на поле «Выберите видео или перетащите файл сюда» либо перетащите ролик мышью. После выбора поле показывает имя файла и его размер, так что сразу видно, тот ли файл открылся.
- В выпадающем списке Битрейт выберите значение. Доступны 320, 256, 192, 128, 96 и 64 kbps; по умолчанию выбрано 192 kbps. Это разумная середина, но для речи её стоит понизить.
- Для лекции, интервью или созвона отметьте галочку «Свести в моно (файл вдвое легче)». Два канала складываются в один, размер падает ровно вдвое.
- Нажмите «Конвертировать в MP3». В блоке Результат пойдёт полоса прогресса, а под ней сменятся статусы: «Читаем файл...», «Декодируем звук...», «Загружаем MP3-энкодер...», «Кодируем MP3...». Последний шаг самый долгий.
- Когда появится «Готово. MP3 можно скачать.», под статусом окажутся кнопка «Скачать MP3» и плеер, чтобы прослушать результат не выходя со страницы. Рядом заполнятся четыре поля: Длительность, Частота, Каналы и Размер MP3. Имя файла берётся от исходника: из
lecture.mp4получитсяlecture.mp3.
Кнопка «Сбросить» очищает выбор и результат, если нужно прогнать следующий файл. Поле «Каналы» в блоке результата показывает, сколько каналов было в исходной дорожке, а не в готовом MP3: если там единица, галочка «моно» уже ничего не изменит и размер не упадёт. Поле «Частота» полезно при подготовке материала к расшифровке — некоторые сервисы капризничают на нестандартных значениях вроде 48000 Hz и просят 44100 Hz.
Ничего никуда не отправляется: браузер читает файл с диска, декодирует его собственным декодером и кодирует библиотекой LAME, загруженной на страницу как обычный скрипт. Проверяется это за полминуты — откройте вкладку Network в инструментах разработчика и убедитесь, что во время конвертации туда не улетает ни одного запроса с содержимым файла. Для рабочих записей и клиентских материалов это важнее, чем удобство.
Где люди спотыкаются
Файл MKV или AVI не открывается. Поле приёма формально допускает .mkv, но открывает файл не страница, а сам браузер, и MKV он в большинстве случаев не декодирует. То же с AVI. Появится сообщение «Браузер не смог декодировать звук из этого файла. Попробуйте MP4, M4A, WebM, OGG или WAV.» Лечится пересборкой контейнера в MP4 — это операция без потери качества, ffmpeg делает её за секунды.
MOV с кодеком HEVC ведёт себя по-разному. На macOS и в Edge такой файл обычно читается, в Chrome под Windows — нет. Дело в системных кодеках, а не в инструменте.
Нужен только кусок, а получается вся дорожка. Инструмент забирает аудио целиком, обрезки в нём нет и не планируется. Если из двухчасового вебинара нужны пять минут, сначала вырежьте фрагмент видео в редакторе, а звук извлеките уже из него — заодно и памяти уйдёт меньше.
Вкладка задумывается на длинном видео. Распакованный звук держится в памяти вкладки целиком: час стереозаписи — это около 600 МБ несжатых сэмплов. Кодирование идёт кусками, чтобы страница не замирала намертво, но на телефоне или слабом ноутбуке очень длинный ролик может просто не поместиться. Галочка «моно» снимает половину нагрузки, разбиение исходника на части — остальную.
В результате тишина. Значит, в файле не было звуковой дорожки: так выходит у беззвучных записей экрана и у роликов, из которых звук уже убрали. Инструмент в этом случае честно пишет «В этом файле не найдена звуковая дорожка.» Проверьте исходник в любом плеере.
Перепутана задача. Если нужно наоборот — оставить картинку и убрать аудио, — это другой инструмент, и он отдаёт результат в WebM, потому что браузерный рекордер не умеет писать MP4. А если исходник уже аудиофайл, скажем диктофонная запись M4A с iPhone, видеоконвертер не нужен: есть отдельная конвертация M4A в MP3 с тем же набором битрейтов. Остальное по теме собрано в разделе видеоинструментов.
Из каких форматов видео получится вытащить звук?
Из тех, которые открывает сам браузер: MP4, M4V, MOV с обычным кодеком, WebM и OGV. Это покрывает съёмку с телефонов, экспорт из большинства редакторов и записи программ захвата экрана. MKV и AVI почти всегда не открываются, хотя поле выбора файла их формально принимает.
Какой битрейт ставить, если не хочется думать?
128 kbps — универсальный компромисс: подходит и речи, и большинству музыки из бытовых роликов. Для лекции понизьте до 96 kbps и отметьте «Свести в моно», для музыкального ролика поднимите до 192 kbps.
Можно ли вытащить звук вообще без потери качества?
На этой странице — нет, здесь происходит перекодирование в MP3. Извлечение дорожки байт в байт делают настольные программы вроде ffmpeg, и на выходе получается AAC или M4A, а не MP3. Если вам нужен именно MP3, потеря неизбежна в любом инструменте.
Сколько занимает обработка часового видео?
Зависит от процессора, скорость обычно в несколько раз выше реального времени, поэтому счёт идёт на минуты, а не на часы. Основное время съедает не декодирование, а кодирование MP3. Вкладку на это время лучше не закрывать.
Работает ли это на телефоне?
Короткие ролики — да. Длинные упираются в память вкладки: несжатый звук занимает существенно больше самого видео, и мобильный браузер может выгрузить страницу. Если конвертация обрывается, включите моно или сделайте это на компьютере.