MP3
MP3
MP3 (MPEG-1 Audio Layer III) — формат сжатия звука с потерями: он выбрасывает
из записи те детали, которые человеческое ухо физически не способно услышать,
и за счёт этого уменьшает файл примерно в 10 раз без заметной потери качества.
История
MP3 — редкий случай, когда у технологии есть конкретный «отец» и почти точная
дата рождения. Разработка шла в Институте Фраунгофера (Fraunhofer IIS, город
Эрланген, Германия) с конца 1980-х. Ключевая фигура — Карлхайнц Бранденбург
(Karlheinz Brandenburg), который занимался этой темой ещё в аспирантуре у
профессора Дитера Зайтцера в Университете Эрлангена-Нюрнберга. Задача эпохи
звучала так: как передать музыку приемлемого качества по цифровой телефонной
линии ISDN, где пропускная способность — жалкие 128 килобит в секунду, а звук
с CD требует 1411 килобит. Нужно было сжатие примерно в 11 раз.
Вехи:
- 1993 — стандарт ISO/IEC 11172-3 (аудиочасть MPEG-1) официально принят.
Layer III — самый сложный и самый эффективный из трёх слоёв. - 14 июля 1995 — внутреннее голосование в Fraunhofer: файлы решили называть
расширением.mp3вместо.bit. День рождения имени. - 1997–1999 — взрыв: плеер Winamp (Джастин Франкель, Nullsoft) и файлообменник
Napster (Шон Фэннинг) сделали MP3 синонимом «музыки из интернета». Первые
портативные плееры: MPMan F10 (Корея, 1998) и Diamond Rio PMP300, из-за
которого звукозаписывающая индустрия судилась — и проиграла. - 2001 — iPod: «1000 песен в кармане» — это буквально маркетинг вокруг
сжатия звука. - 2017 — истекли последние патенты. Fraunhofer свернул лицензионную
программу, СМИ писали «MP3 умер», хотя на деле он впервые стал полностью
свободным форматом.
Есть и легенда, которая при этом правда: Бранденбург отлаживал кодек на
а-капельной песне Сюзанны Веги «Tom's Diner» — голый голос без инструментов
беспощадно выявлял артефакты сжатия. Вегу с тех пор называют «матерью MP3».
Владельца у формата сегодня нет: стандарт открыт, патенты истекли, кодируй
и декодируй кто хочет.
Что это такое
MP3 — это формат сжатия звука с потерями (lossy). Ключевое слово —
«с потерями»: в отличие от ZIP-архива, из MP3 нельзя восстановить исходный
звук бит в бит. Часть информации выброшена навсегда. Фокус в том, какая
часть: алгоритм опирается на психоакустику — науку о том, что человеческое
ухо реально слышит, а что нет. Тихий звук сразу после громкого, частоты,
замаскированные соседними более громкими, ультразвук — всё это можно
выбросить, и слушатель не заметит.
Полезно развести три пары понятий:
- Lossy vs lossless. MP3, AAC, Opus — с потерями (файл меньше, исходник
не восстановить). FLAC, ALAC — без потерь (файл больше, восстанавливается
бит в бит). WAV — вообще без сжатия, сырые числа. - Формат vs кодек. MP3 — формат (описание, как устроен файл). Кодек —
конкретная программа, которая кодирует/декодирует: например, LAME —
самый известный открытый MP3-энкодер (развивается с 1998 года). Один формат,
много кодеков разного качества. - MP3 vs MP4. Вопреки названию, MP4 — не «следующая версия MP3».
MP4 — контейнер (коробка, куда кладут видео- и аудиодорожки), а MP3 —
сам аудиоформат. Внутри MP4 обычно лежит звук в AAC.
Стандартные параметры: битрейт (скорость потока) от 32 до 320 килобит/с,
частоты дискретизации 32/44,1/48 кГц (и вдвое ниже в расширении MPEG-2 —
как раз для речи). 128 kbps долго считались «стандартом интернета», 320 kbps —
практический потолок качества. Метаданные (исполнитель, альбом, обложка)
живут в тегах ID3 — это отдельный блок, приклеенный к аудиопотоку.
Аналогии из жизни
Конспект лекции. Ты не стенографируешь дословно, а записываешь то, что
важно, отбрасывая воду, повторы и то, что и так очевидно. Конспект в 10 раз
короче, а смысл сохранён. Где ломается: по конспекту ты можешь додумать
и восстановить недостающее, потому что понимаешь смысл. MP3 ничего не
«понимает» — выброшенное не восстановит ни один декодер, оно исчезло физически.
Бульонный кубик. Из кастрюли бульона выпарили воду — осталась маленькая
плитка, которая при разведении даёт «примерно тот же» вкус. Компактно, удобно
хранить и возить. Где ломается: с кубиком заранее известно, что убрали
(воду), и убирают всегда одно и то же. MP3 в каждом фрагменте записи решает
заново, чем пожертвовать: в одном кадре — верхними частотами, в другом —
тихими деталями после удара барабана. Это адаптивный процесс, а не одна
фиксированная операция.
Упаковка чемодана перед полётом с лоукостером. Жёсткий лимит веса
(битрейт!), и ты выкладываешь вещи, без которых точно обойдёшься. Чем жёстче
лимит, тем более нужные вещи приходится оставлять — прямая аналогия с тем,
как на 64 kbps музыка начинает заметно «булькать». Где ломается: вещи из
чемодана ты выложил, но они остались дома — можно вернуться и забрать.
У MP3 «дома» ничего не остаётся: если исходник не сохранён отдельно,
выброшенные детали потеряны навсегда.
Как это работает
Пошагово, что происходит, когда кодер превращает WAV в MP3:
-
Нарезка на кадры. Звук режется на кадры (frames) по 1152 сэмпла —
при 44,1 кГц это примерно 26 миллисекунд звука. Каждый кадр кодируется
почти независимо и имеет свой заголовок — поэтому MP3 можно слушать
с середины файла и стримить по сети. -
Разложение по частотам. Каждый кадр прогоняется через банк фильтров:
сначала 32 частотные полосы, затем каждая полоса дополнительно раскладывается
через MDCT (модифицированное дискретное косинусное преобразование) — в сумме
576 частотных линий. Грубо: вместо «звуковая волна во времени» получаем
«сколько энергии на каждой частоте прямо сейчас». -
Психоакустическая модель. Параллельно отдельный анализатор смотрит
на тот же кадр и вычисляет порог маскировки: какие частоты сейчас
заглушены соседними громкими (частотная маскировка), какие тихие звуки
не слышны сразу после громких (временна́я маскировка), что лежит ниже
абсолютного порога слышимости. Итог — карта «здесь можно грубить,
тут нужна точность». -
Квантование. Самый важный шаг с потерями. Значения частотных линий
округляются: там, где ухо чувствительно, — мелкая шкала округления, где
замаскировано — грубая. Ошибка округления и есть «потери», но она спрятана
под порог маскировки, поэтому её не слышно. -
Кодирование Хаффмана. Округлённые числа дополнительно жмутся без потерь:
частым значениям — короткие битовые коды, редким — длинные. Тот же принцип,
что в ZIP. -
Bit reservoir (битовая копилка). Если простой кадр не израсходовал свой
лимит бит, остаток передаётся сложному соседнему кадру. Поэтому даже при
постоянном битрейте (CBR) качество внутри файла слегка «дышит». Режим VBR
(переменный битрейт) делает это честнее: тишине — мало бит, сложному
фрагменту — много. -
Стерео-хитрости. Joint stereo: вместо «левый + правый» кодируется
«сумма + разность» каналов — разность обычно мала и жмётся лучше.
Декодер проходит цепочку в обратную сторону, но шаг 4 необратим: он лишь
достраивает звук из того, что осталось.
Почему нельзя «улучшить» MP3
Конвертация MP3 128 kbps в MP3 320 kbps или в FLAC не вернёт качество — выброшенное при первом кодировании потеряно навсегда. Хуже того, каждое перекодирование lossy → lossy накапливает новые потери: психоакустическая модель второго прохода режет уже порезанный звук по-своему. Правило простое: перекодируй всегда из исходника, а lossy-файл считай финальным продуктом.
Где встречается в обычной жизни
- Записи телефонных разговоров. «Разговор может быть записан…» — в банке,
страховой, такси. Телефонная речь пишется в MP3 на низких битрейтах
(16–32 kbps, моно): голос разборчив, а часовой разговор весит несколько
мегабайт. - Аудиокниги и подкасты. Значительная часть подкаст-хостингов по сей день
раздаёт выпуски именно в MP3 — это единственный формат, который гарантированно
откроется у всех слушателей на любом устройстве. - Музыка на удержании и IVR. «Ваш звонок очень важен для нас» и мелодия
в трубке — это зацикленный MP3-файл на сервере телефонии. - Флешка в автомобиле. Любая магнитола с USB-портом, даже двадцатилетняя,
читает MP3 — это минимальный общий знаменатель всей аудиотехники. - Рингтоны и звуки уведомлений. Большинство кастомных мелодий, которые
люди ставят на звонок, — это вырезанные фрагменты MP3.
А вот голосовые сообщения в Telegram и WhatsApp — уже не MP3: там Opus,
современный кодек, который на низких битрейтах звучит заметно лучше.
Где встречается в IT и бизнесе
- Телефония и колл-центры. Записи звонков хранятся годами по требованиям
регуляторов и для контроля качества. MP3 на 16–24 kbps сжимает часы речи
в мегабайты — нужно, когда объём архива измеряется терабайтами. - Пайплайны распознавания речи (ASR). Прежде чем текстовая аналитика
разберёт разговор менеджера с клиентом, звук достаётся из MP3, декодируется
в PCM и скармливается модели (Whisper, GigaAM и другим). Нужно, когда речь
превращают в данные: транскрипты, саммари, поиск по звонкам. - Стриминг и CDN. Интернет-радио десятилетиями вещает MP3-потоком
(протоколы Icecast/SHOUTcast) — каждый кадр самодостаточен, подключайся
в любой момент. - Медиатеки продуктов. Джинглы, звуки интерфейса, аудиоконтент в приложениях —
MP3 выбирают за стопроцентную поддержку декодирования везде: в браузере,
на iOS, на Android, на «кнопочнике». - Экономия трафика. Там, где канал дорогой или узкий (мобильный интернет
в роуминге, IoT-устройства), сжатие звука в 10–20 раз — прямые деньги.
Кто пользуется
- Телеком и колл-центровые платформы (Asterisk, FreePBX, облачные АТС) —
запись разговоров в MP3 или WAV — штатная функция. - Подкаст-индустрия: крупнейшие хостинги раздают MP3, потому что его
поддерживают все приложения-«подкетчеры» без исключения. - Стриминги — уже наполовину нет: Spotify внутри использует Ogg Vorbis,
Apple Music — AAC, YouTube — AAC и Opus. Но экспорт «скачать трек» и
совместимость со старыми устройствами по-прежнему часто означает MP3. - Производители техники: любой чип для аудиоплеера, магнитолы, телевизора,
умной колонки обязан декодировать MP3 — это де-факто базовый уровень
совместимости уже четверть века. - Масштаб оценить сложно, но по разным оценкам MP3 — самый распространённый
аудиоформат в истории: счёт файлов идёт на сотни миллиардов.
Альтернативы и конкуренты
- AAC (Advanced Audio Coding) —
плюс: тот же размер — заметно лучше качество, стандарт Apple/YouTube;
минус: часть патентов ещё действует, поддержка на старом железе хуже. - Opus —
плюс: лучший на сегодня кодек для речи и низких битрейтов, полностью открыт
(RFC 6716), минимальная задержка — стандарт для VoIP и мессенджеров;
минус: старые устройства и часть софта его не знают, для «файла на флешку»
подходит хуже. - Ogg Vorbis —
плюс: открытый и бесплатный ещё с эпохи патентов на MP3, качество выше MP3;
минус: так и не стал массовым за пределами игр и Spotify. - FLAC —
плюс: сжатие вообще без потерь, идеален для архива и мастер-копий;
минус: файлы в 3–5 раз больше MP3 — для стриминга и телефонии избыточен.
Речь на низком битрейте — не для MP3
MP3 проектировался под музыку и битрейты от ~112 kbps. Если задача — голос в 16–32 kbps (телефония, диктофон, голосовые боты), Opus даст ту же разборчивость вдвое-втрое меньшим размером или заметно лучшее качество тем же. MP3 здесь выбирают только ради совместимости со старыми системами.
Когда НЕ стоит использовать
- Архив и мастер-записи. Исходники студийной записи, судебно значимые
аудиозаписи, материал для будущего монтажа — только lossless (FLAC/WAV),
потому что потери необратимы, а перекодирование их накапливает. - Цепочки обработки. Если звук будет ещё резаться, склеиваться, чиститься
и перекодироваться — держи промежуточные версии в WAV/FLAC, потому что каждое
lossy-звено ухудшает результат каскадно. - Реальное время: звонки, конференции, игры. У MP3 большая алгоритмическая
задержка и нет механизмов устойчивости к потере пакетов, потому что он
создавался для файлов, а не для живого диалога. Здесь работает Opus.
Связанные понятия
- Психоакустика — наука о восприятии звука человеком; фундамент всех
lossy-кодеков. - MDCT — модифицированное дискретное косинусное преобразование; переводит
звук из «формы волны» в набор частот (родственник DCT из JPEG). - Битрейт (CBR/VBR) — количество бит на секунду звука; постоянный или
переменный. - Теорема Котельникова (Найквиста—Шеннона) — почему 44,1 кГц дискретизации
хватает для всего слышимого диапазона до ~20 кГц. - ID3-теги — блок метаданных в MP3-файле: исполнитель, альбом, обложка.
- Кодек vs контейнер — алгоритм сжатия против «коробки» для дорожек
(MP4, MKV, Ogg).
Литература и источники
- Wikipedia (en): https://en.wikipedia.org/wiki/MP3 — подробно и с историей
патентов; русская версия тоже приличная. - Стивен Уитт, «Как музыка стала свободной» (Stephen Witt, How Music Got
Free, 2015, есть русский перевод) — захватывающая документальная история
MP3, Бранденбурга и музыкального пиратства. - Официальная история формата от Fraunhofer IIS — искать «Fraunhofer mp3
history». - Спецификация: ISO/IEC 11172-3 (MPEG-1 Audio) — сам стандарт, тяжёлое чтение,
но первоисточник. - LAME — открытый MP3-энкодер и его документация: https://lame.sourceforge.io
- Видео-лекции по психоакустике и аудиокодированию — искать «perceptual audio
coding lecture» (например, материалы самого Бранденбурга на английском).
Где встретилось у меня
Вчера строился пайплайн локальной транскрибации записей звонков колл-центра:
пара сотен MP3-файлов (телефонное качество — 24 kbps, 16 кГц, моно, суммарно
около суток речи) инкрементально прогонялись через модели распознавания речи,
а тексты складывались в SQLite-базу для дальнейшей аналитики. MP3 всплывал
на каждом шаге: скачивание записей, отбраковка битых файлов, декодирование
перед подачей в ASR-модель.
Краткое резюме
- MP3 — сжатие звука с потерями: выбрасывает то, что ухо не слышит,
и уменьшает файл примерно в 10 раз. - Создан в Fraunhofer IIS (Карлхайнц Бранденбург и команда), стандартизирован
в 1993-м, имя получил в 1995-м, с 2017-го полностью свободен от патентов. - Внутри: психоакустическая модель + MDCT + квантование + код Хаффмана;
необратимый шаг — квантование. - Потери накапливаются: никогда не перекодируй lossy → lossy, храни исходники
в lossless. - Сегодня MP3 — «латиница аудиомира»: не лучший по качеству (AAC и Opus
сильнее), но единственный, который читается абсолютно везде.