Как MP3 решает, что можно убрать

Звук в цифровой записи — это последовательность измерений колебаний воздуха. Чтобы сделать файл меньше, MP3 не просто сокращает качество каждого измерения: он анализирует короткие участки музыки и оценивает, какие детали слушатель, вероятно, не различит.

Для этого кодек использует психоакустическую модель — приближённое описание того, как слух воспринимает звуки. Если рядом звучит громкий тон, более тихий тон близкой частоты может стать почти неслышным: громкий звук как бы заслоняет его. Это называется маскировкой. Сходным образом резкий звук на короткое время затрудняет восприятие тихих деталей, звучавших непосредственно перед ним или после него.

От анализа к сжатому файлу

Кодировщик разбивает сигнал на частотные составляющие — условно говоря, выясняет, сколько в каждом фрагменте низких, средних и высоких тонов. Затем он оценивает порог слышимости: насколько тихой может быть деталь, прежде чем она потеряется на фоне более сильных звуков. Данные о компонентах, которые оказываются ниже этого порога, можно передать с меньшей точностью или вовсе не сохранять.

Остальную информацию MP3 кодирует компактнее, распределяя доступное место так, чтобы важные для восприятия детали сохранились. Поэтому результат зависит от конкретного сигнала: участок с плотным звучанием может скрывать больше тихих компонентов, чем пауза или одиночный чистый тон.

Экономия с оговоркой

Это сжатие с потерями: удалённые или огрублённые данные нельзя восстановить из готового MP3 в точности. Расчёт маскировки — не идеальная копия слуха, а инженерная модель, поэтому при сильном сжатии артефакты иногда становятся заметны: звук может казаться металлическим, шипящим или лишённым тонких деталей.

Именно здесь находится компромисс формата: файл становится меньше не потому, что музыка целиком укладывается в меньшее число байтов, а потому, что кодировщик старается не тратить их на подробности, которые в данном фрагменте трудно услышать.