Как уменьшить размер MP3-файла
Уменьшение MP3-файлов чаще всего требуется, когда место для их хранения или воспроизведения ограничено.
Сжатие аудиозаписей до меньшего размера освобождает это место и позволяет сохранить на цифровом носителе или устройстве большее количество MP3-файлов.
Удобно? Конечно, да. Но, стоит учитывать, что такая выгода совсем не бесплатна. При уменьшении/сжатии MP3-файла страдает его первоначальное аудиокачество. Хотя аудиофилов ухудшение оригинального звучания вряд ли устроит, для бытового использования некоторые потери в качестве MP3-файла не критичны.
Например, для расшифровки аудиозаписей достаточно, чтобы битрейт звукового файла был 64-128 кбит/c, а не 192-320 кбит/c. Соответственно, ограничив битрейт — уменьшится и размер MP3 файла.
Программа для сжатия MP3-файлов
MP3 Quality Modifier — бесплатная программа, с помощью которой можно уменьшить качество и размер MP3-аудиозаписей. Интерфейс программы русифицирован, поэтому разобраться в ней не составит трудностей.
Для этого:
1. Переходим на сайт разработчика по ссылке http://www.inspire-soft.net/software/mp3-quality-modifier,
и скачиваем, нажав на ссылке «Download now» последнюю версию программы.
Прямая ссылка для скачивания на момент написания статьи — http://www.inspire-soft.net/data/mp3-quality-modifier.zip
2. Скачанный архив mp3-quality-modifier.zip
распаковываем в любую папку, так программа не требует установки.
3. Запускаем программу с помощью файла MP3QualityModifier.exe.
Согласившись с лицензией
и ознакомившись с инструкцией для начала работы,
откроется главное окно программы MP3 Quality Modifier.
4. MP3-файл, который требуется уменьшить, перетаскиваем мышью в окно программы.
5. В списке программы отобразятся свойства добавленного MP3-файла, это:- размер,
- битрейт,
- режим,
- частота дискретизации
Запустить обработку MP3-записи можно сразу, нажав на одноименную кнопку «Обработать». При этом менять какие-либо настройки в программе не требуется, т.к. установлен режим «По-умолчанию». Одно замечание — папка назначения должна отличаться от папки исходного аудиофайла.
В этом режиме MP3-файл будет уменьшен до размера, при котором будет сохранено его приемлемое аудиокачество.
Процесс сжатия/конвертации выглядит так.
Закончив обработку файла, программа сообщит о результате.
В данном случае, исходный MP3-файл размером 125 Mb был уменьшен до 48 Mb. Сжатие составило 61% от исходной аудиозаписи,
а качество MP3-файла осталось приемлемым для его последующей обработки, например для расшифровки его в текстовой формат.
Если размер, либо качество уменьшенного аудиофайла вас не устраивают, то оптимальные параметры MP3-сжатия можно подобрать в разделе «Установки».
Автор: Юлия Панова.
06.01.2017 Просмотров: 3162
Сжатие звука без потерь — Википедия
Звук является простой волной, а оцифрованный звук — цифровое представление этой волны. Это достигается запоминанием уровня аналогового сигнала множество раз в течение одной секунды. Например, в обыкновенном CD сигнал запоминается 44100 раз за секунду. Так как CD работает со стерео, мы запоминаем сигнал для левой и правой колонки параллельно. Для каждого замера используются 16-битовые числа. Поэтому нетрудно посчитать, что одна секунда звучания занимает 2 × 2 × 44100 = 176 400 байт.
Сжатие звука без потерь — совокупность преобразований, позволяющая эффективно сжимать звуковые данные с возможностью их полного восстановления. Как и любое сжатие без потерь, сжатие звуковых данных эксплуатирует какую-либо особенность данных. В данном случае это:
- Знание границ семплов: мы знаем, сколько битов или байтов отводится на один отсчёт (семпл), и сколько в семпле аудиоканалов.
- Невысокая производная: другими словами, значения соседних семплов мало отличаются.
- Невысокая вторая производная: значения соседних трёх семплов близки к линейной функции.
- Близость левого и правого каналов: уровни сигнала в левой и в правой колонке, как правило, близки.
Первым шагом в сжатии будет представление каналов аудио L и R более эффективным образом, представив их некими числами X, Y согласно следующему алгоритму:
X=(L+R)/2{\displaystyle X=(L+R)/2}
Y=L−R{\displaystyle Y=L-R}
Для дробных чисел это преобразование не теряет информации и является эквивалентным оригинальному. Для целых же (L+R)/2{\displaystyle (L+R)/2} теряет 0,5 при конверсии в integer
Следующий шаг — пропустить X и Y через алгоритм, который максимально эффективно уберёт весь избыток информации в представлении X, Y.
В данном случае весь процесс направлен на представление массивов X, Y минимально возможными числами, все еще сохраняя обратимость процесса. Есть множество способов сделать это. Один из них — преобразование с использованием линейной алгебры:
PX = (2 * X−1) − X−2
PY = (2 * Y−1) − Y−2Если X = (2, 8, 24, ?), то в ряду PX на четвертом месте будет P4 = (2 * X4-1) − X4-2 = (2 * 24) − 8 = 40
То есть, если X = (2,8,24,27,25,28,21,17), то PX = (2,8,14,40,30,…)
- Заметим, что X и Y таковы, что на всем протяжении спектра в данную секунду в среднем не должно происходить огромных изменений в значениях между соседними частотами, что облегчает кодирование.
При этом стоит помнить, что хорошие алгоритмы организуют обработку входящих данных таким образом, чтобы уменьшить числа в массиве PX, PY.
Пусть число m лежит в диапазоне 0 … 1024. Для массива PX выполняется серия преобразований с разными значениями m следующим образом:
X = (2, 8, 24, ?), тогда соответственно
PX = (2 * X−1) − X−2 = (2 * 24) − 8 = 40Если ? = 45 и m = 512, тогда конечное значение = ?−(PX∗m/1024)=45−(40∗m/1024)=45−(40∗512/1024)=45−20=25{\displaystyle ?-(PX*m/1024)=45-(40*m/1024)=45-(40*512/1024)=45-20=25}
Далее происходит перебор других значений m, поскольку большие значения могут быть более эффективны.
Тогда, получив для определенного m массив данных, происходит увеличение или уменьшение m в зависимости от того, была ли последняя попытка в алгоритме удачной.
Используя разные уравнения и используя множество проходов для разных свободных коэффициентов, можно добиться вполне ощутимого сжатия данных.
Приведем пример нескольких уравнений, как это следует из технической литературы
P0 = 0
P1 = X−1
P2 = (2 * X−1) − X−2
P3 = (3 * X−1) − (3 * X−2) + X−3
Идея сжатия аудио заключается в представлении чисел, соответствующих потоку минимально возможным образом, убрав предварительно любую корреляцию данных. После этого можно записывать поток закодированных данных на диск. Одним из самых эффективных способов является кодирование Райса.
Меньшие числа предпочтительней тем, что их представление в бинарном представлении короче. Например, необходимо закодировать следующий ряд:
Базис по основанию 10: 10, 14, 15, 46
Или тот же ряд в бинарном виде
Базис по основанию 2: 1010, 1110, 1111, 101110
Теперь если требуется представить этот в виде строки, где для каждого числа зарезервировано 32 бита (диапазон всех возможных значений), то это будет неэффективно, поскольку понадобится 128 бит. Однако существует более эффективный метод. Наилучшим решением было бы просто записать бинарные числа 1010, 1110, 1111, 101110 без запятых, получив ряд вида 101011101111101110. Проблема в том, что после нет возможности узнать границы каждого числа. В качестве решения подобной задачи, как правило, используется алгоритм Райса.
- Кодирование Райса — это способ представить маленькие числа одной строкой, сохраняя способность их различать.
- Примечание: алгоритм тем эффективнее, чем меньше числа, поэтому необходимо изначально позаботиться об этом
На каком-то этапе кодирования данные представлены в виде числа n. Закодированное, оно добавляется справа к строке уже закодированных чисел таким образом, чтобы был возможен обратный процесс.
- Основная идея представить число n как n=q∗2k+r{\displaystyle n=q*2^{k}+r}, так чтобы 0 <= r < 2^k.
Так как в машинном языке существует сверхбыстрая команда ротации числа, соответствующая делению числа на степени двойки, достаточно использовать k=log n/log 2, округленное до наименьшего целого числа. Таким образом, в алгоритме гарантированно выполняются условия для k. Исходя из формулы, необходимо определить число q{\displaystyle q} и остаток r{\displaystyle r}: r=mod(n,2k){\displaystyle r=mod(n,2^{k})}. Например,
n = 46 (десятичное) = 101110 (двоичное)
k = 4 (выбирается)Тогда r=mod(46,16)=14{\displaystyle r=mod(46,16)=14} (1110 в двоичной системе). q=2{\displaystyle q=2}.
46=2∗24+14{\displaystyle 46=2*2^{4}+14}
Далее строится кодированное число по следующей схеме. Первыми идут нули, количеством в q штук [00]. Затем справа к нулям добавляется маркировочный бит [1], чтобы знать когда кончаются нули. А за ними дописывается остаток r [1110], длиной в k бит.
- То есть число 46 в закодированном виде выглядит [00][1][1110] = 0011110
Теперь, с учетом определенности k, которым кодировалось число, можно с легкостью его расшифровать:
(количество нулей) * 24 + (k бит следующих за маркировочным битом) = 2*24+14 = 46
Следующее число начинается сразу же со следующего бита.
Если данные кодируются с помощью слишком большого числа k, например k=32, тогда способ превращается в описанный в начале раздела метод, когда каждому числу соответствует 32 бита, только оно предваряется бесполезным маркировочным битом. В случае малого k количество нулей экспоненциально возрастает — для k=0. Для представления числа 46 понадобится 46 нулей и 1 маркировочный бит. Оптимальный вариант, учитывая, что в ряду калибровочные изменения минимальны, — это кодировать среднестатистическим значением для k, например для кодирования сотого числа k высчитывается как среднестатистический размер чисел в массиве под индексами 0…99.
Например, для 16-ти разрядного представления отсчетов число 46 будет представлено следующим двоичным кодом: 0000000000101110. После перекодировки это же число будет содержать всего лишь 7 разрядов: 0011110.
Оптимальное k может быть вычислено и экспериментальным способом: например, любое k между 16…128 нормально работает. В любом случае, если известен примерный диапазон закодированных значений, то оптимальное значение для k = log n / log 2.
Аудио Lossy – формат с потерями – что нужно знать
Слово Lossy используется в цифровом аудио для описания типа сжатия, используемого для хранения звуковых данных. Алгоритм, используемый в формате аудио с потерями, сжимает звуковые данные таким образом, что отбрасывает некоторую информацию. Эта потеря сигнала означает, что закодированный звук не идентичен оригиналу.
Аудио с потерями производит звук более низкого качества и имеет меньший размер файла.
Сжатие с потерями также называют необратимым сжатием, потому что невозможно восстановить данные, которые были удалены.
Какая разница между Lossy и Lossless
При создании MP3-файлов путём копирования одного из ваших музыкальных компакт-дисков, некоторые детали из оригинальной записи теряется, что делает его с форматом с потерями. Этот тип сжатия не ограничивается только аудио; например, файлы изображений в формате JPEG также сжимаются с потерями.
Этот метод является противоположностью сжатия звука без потерь, используемого для таких форматов, как FLAC, ALAC и другие. Аудио в этом случае сжимается таким образом, что данные не удаляюся. Звук идентичен оригинальному источнику.
Когда дело доходит до совместимости, сжатые с потерями файлы имеют преимущество. В то время как файлы Lossless поддерживаются только некоторыми устройства и приложения, аудио формат с потерями такой как МР3 будет работать практически на любом устройстве.
| Примеры типов аудиофайлов с потерями и без потерь | |
|---|---|
| С потерями | Lossless |
| AA3 | ALAC |
| AAC | FLAC |
| MP3 | APE |
| MPC | SHN |
| OGG | TTA |
| WMA | WV |
Как работает сжатие аудио с потерями
Сжатие с потерями делает определенные предположения о частотах, которые человеческое ухо вряд ли обнаружит.
Когда песня преобразуется в аудиоформат с потерями, такой как AAC, алгоритм анализирует все частоты, а затем отбрасывает частоты, которые ухо не должно обнаружить. Эти низкие частоты отфильтровываются или преобразуются в моносигналы, которые занимают меньше места на диске.
Другая техника отбрасывает очень тихие звуки, которые слушатель вряд ли заметит, особенно в более громкой части песни. Такой подход уменьшает размер аудиофайла, сохраняя при этом максимально возможное качество звука.
Что происходит с аудио при сжатии
Сжатие с потерями вводит артефакты. Эти артефакты представляют собой нежелательные звуки, которых нет в оригинальной записи, но которые являются побочными продуктами сжатия. Этот шум ухудшает качество звука и заметно, когда музыкальные файлы конвертируются с использованием низких скоростей передачи.
Различные типы артефактов влияют на качество записи. Искажения являются одним из самых распространенных артефактов. Например, искажение делает барабаны слабыми – без какого-либо реального удара. Также могут быть затронуты голоса в песне, что приведет к грубому звучанию вокала и отсутствию детализации.
Во многих случаях обычные слушатели не могут обнаружить разницу между алгоритмом кодирования с потерями и без потерь, хотя некоторые аудиофилы, использующие очень дорогое оборудование, утверждают, что слышат разницу. Разница в качестве становится заметной только тогда, когда в игру вступают очень низкие скорости передачи данных или агрессивные алгоритмы сжатия.
Зачем сжимать аудио файлы?
В большинстве цифровых аудиоформатов используется какое-то сжатие для эффективного хранения звука. Без сжатия размеры файлов были бы очень большими.
Например, типичная 3-минутная песня, хранящаяся в виде файла MP3, занимает от 4 МБ до 5 МБ. Использование формата WAV для хранения той же самой песни, но без сжатия, приводит к размеру файла приблизительно в 30 МБ – как минимум в шесть раз больше. Меньше песен помещается на ваш смартфон или жесткий диск, когда вы выбираете несжатые аудио форматы.
Как сжать аудио файлы
Есть много способов превратить аудио файл без потерь в файл с потерями. Любая программа, которая конвертирует в формат с потерями, содержит необходимые инструменты для создания аудиофайла с потерями. Просмотрите любой список бесплатных конвертеров аудиофайлов и поэкспериментируйте с различными приложениями, которые конвертируют форматы аудиофайлов в MP3 и другие форматы с потерями. Разные приложения могут давать разные результаты.
НОУ ИНТУИТ | Лекция | Форматы сжатия аудиоданных с потерями
Аннотация: Эта лекция посвящена некоторым теоретическим вопросам аудиокодирования, а так же – подробностям о форматах сжатия аудиофайлов с потерями и соответствующему ПО.
Особенности сжатия цифрового звука
Сегодня большинство из нас имеет дело преимущественно с цифровыми системами воспроизведения звука. В этих системах звук хранится в цифровом виде – то есть – в виде последовательностей нулей и единиц, которые после раскодирования их с помощью специального программного и аппаратного обеспечения, превращаются в звук. В мире цифровой музыки идет борьба, с одной стороны, за качество воспроизведения, а с другой – за объем хранимых данных. Это два противоборствующих понятия – чем выше качество звука, тем, обычно, больше места требуется для его хранения. Для того, чтобы сохранить цифровой звук с как можно более высоким качеством в как можно меньшем объеме информации, были разработаны алгоритмы сжатия звука.
Существует два различных подхода к сжатию аудиоинформации. Первый называется сжатием без потерь (lossless) – в ходе такого сжатия звук, записанный в цифровом виде, сохраняется полностью, без потерь. Другой подход к сжатию аудиоданных называется сжатием с потерями (lossy) – звук особым образом обрабатывается, из него удаляется все, по заключению алгоритма сжатия, лишнее, а то, что остается, сжимается. Такое сжатие, в сравнении со сжатием без потерь, позволяет добиться гораздо более высоких уровней сжатия, то есть – уменьшить размеры звуковых файлов, в то время как качество звучания, если не стараться сжать файл слишком сильно, страдает не особенно заметно.
Музыкальные записи можно сжимать и обычными архиваторами, однако они не могут работать в режиме реального времени, к тому же, уровень сжатия несжатых музыкальных записей редко когда превышает 50%. Другой, используемый на практике, способ сжатия аудиоинформации заключается в применении специальных программ – так называемых кодеков, с помощью которых можно сжимать и «на лету» заниматься раскодированием и воспроизведением сжатых композиций.
Говоря о кодеках для сжатия аудиоинформации, следует различать понятия кодек и контейнер медиаданных. Контейнер – это, упрощенно говоря, некая стандартная оболочка, в которой хранятся аудиоданные, сжатые тем или иным кодеком. Например, в MP4-контейнере могут храниться данные, сжатые различными кодеками – в частности – кодеком сжатия с потерями AAC, кодеком сжатия без потерь ALAС и другими. Обычно для различных типов данных, которые хранятся в MP4-контейнере, применяются различные расширения файла. Точно так же, в WAV-файле могут храниться различные данные – например, сжатые в популярном формате MP3 или несжатая информация в формате PCM – в случае с WAV-файлами расширение имени файла остается неизменным (.wav), а различаются эти файлы лишь по своей внутренней структуре.
Перечень программ
В табл. 3.1. приведены программы, описанные в данной теме. Это, в основном, универсальные программы, вы можете выбрать для кодирования тех или иных файлов любую из них. Входным форматом файлов по умолчанию является WAV, однако практически все программы умеют кодировать музыку между форматами и «разжимать» исходные файлы в стандартные WAV.
| Программы и форматы | MP3 | OGG | WMA | AAC | VQF | FLAC | WAV PACK | APE | ALAC |
|---|---|---|---|---|---|---|---|---|---|
| Lame | + | ||||||||
| Winlame | + | + | + | ||||||
| RazorLame | + | ||||||||
| Windows Media Encoder | + | ||||||||
| aoTuV | + | ||||||||
| iTunes | + | ||||||||
| ImToo WMA MP3 Converter* | + | + | |||||||
| MP4 Converter** | |||||||||
| ImToo Audio Encoder | + | + | + | + | + | + | |||
| Flac Frontend | + | ||||||||
| Cue Splitter*** | |||||||||
| WavPack Frontend | + | ||||||||
| Monkey’s Audio | + | ||||||||
| dBpoweramp | + | + | + | + | + | + | + | + |
*Программа ImToo WMA MP3 Converter поддерживает большое количество входных форматов файлов, на выходе же могут быть лишь MP3 и WMA.
**Программа MP4 Converter конвертирует видеофайлы различных форматов в формат, понятный плеерам Apple iPod.
***Программа для разбиения больших аудиофайлов в соответствии с индексными картами.
Сжатие с потерями
Среди существующих форматов сжатия аудиоданных с потерями можно отметить «большую четверку» — MP3, WMA, Ogg Vorbis и AAC. Ваш MP3-плеер с практически 100% вероятностью будет поддерживать один из этих форматов, а скорее всего – несколько. Знания о некоторых особенностях форматов будут особенно полезны при практической работе с аудиоинформацией. Например, в следующих лекциях мы рассмотрим ПО для работы со звуком, в частности, подробно остановимся на конверсии звука из одного формата в другой, и если вы будете знать о формате сжатия данных немного больше, чем его название, это может вам неплохо помочь. Итак, начнем с самого популярного формата.
MP3
Полное название MP3 – MPEG 1 Audio Layer 3. MP3 – это формат сжатия аудиоданных с потерями, который добился невероятной популярности по всему миру. В настоящее время существуют варианты стандарта — MPEG-2 Layer 3 и MPEG-2.5 Layer 3.
История MP3 начинается в конце 1980-х годов, когда рабочая группа инженеров института Фраунгофера (Fraunhofer Society) начала работать над проектом DAB (Digital Audio Broadcast). Проект был частью исследовательской программы EUREKA и в ее рамках был известен как EU-147. MP3 стал результатом переработки стандартов сжатия аудиоинформации Musicam и ASPEC, добавления к идеям, используемых в этих стандартах, новых оригинальных концепций. Непосредственное отношение к стандарту имеет так же компания Thomson.
Стандарт развивался в начале 1990-х, в 1995 году была опубликована окончательная версия стандарта, однако еще в 1994 году был создан первый программный MP3-кодировщик, который назывался l3enc. Тогда же было выбрано расширение .mp3 для файлов, закодированных в данном формате, а в 1995 году появился первый программный MP3-проигрыватель Winplay3, доступный широкой общественности. Благодаря высокому качеству музыки при небольшом размере файлов, а так же из-за появления простого и качественного программного обеспечения для проигрывания и создания MP3-файлов (например, широко известного и ныне здравствующего WinAmp’a, который появился еще в середине 1990-х годов), стандарт обрел огромную популярность и пользуется ей до сих пор.
Возможности MP3
Говоря о возможностях формата MP3, пожалуй, надо начать с формата, в котором хранят музыку на обычных музыкальных CD-дисках, на так называемых Audio CD. Звук, записанный на такие диски, имеет вполне определенные характеристики, а именно, это 44.1kHz 16Bit Stereo (44,1 кГц, 16-битный стереозвук). В переводе на нормальный человеческий язык это означает, что каждая секунда звучания состоит из 44100 образцов (этот параметр называют частотой дискретизации), каждый из которых имеет размер 16 бит (то есть – два байта), причем, информация записывается для двух каналов – для правого и для левого. В итоге получается, что для хранения одной секунды музыки в формате Audio CD потребуется 44100*16*2=1411200 бит, или 176400 байт, или 172,2 Кб. Таким образом, пятиминутная композиция займет 176400*5*60=52920000 байт, то есть – почти 50 мегабайт дискового пространства. Даже сегодня, учитывая десятки, а чаще – сотни гигабайт жестких дисков, которые есть в распоряжении обычных пользователей, довольно сложно представить себе музыкальную коллекцию, состоящую исключительно из звука, записанного в таком неэкономном формате. Что и говорить о жестких дисках на пару гигабайт, которые были пределом мечтаний многих лет десять назад.
Файлы, сжатые в MP3 практически без потери первоначального качества, занимают в 6-10 раз меньше места, чем оригинал. То есть из огромного 50-мегабайтного файла получается вполне пристойный 5-мегабайтный. Причем, если сжать такой файл с помощью обычных алгоритмов сжатия (RAR или ZIP, например), которые используются для простых файлов, мы получим, в лучшем случае, 50% выигрыш (то есть файл порядка 25 Мб). В чем же дело? Почему же MP3 способен так сильно сжимать файлы, практически не ухудшая их качества. Ответ на вопрос здесь кроется в слове «практически». Ведь обычное сжатие не изменяет качества композиций, оно полностью сохраняет его, а MP3 проводит некие манипуляции с файлом, которые могут сказаться на его качестве.
Как работает MP3
В основе MP3 лежит множество механизмов сжатия, в частности, так называемое адаптивное кодирование, основанное на психоакустических моделях, которые учитывают особенности восприятия звука человеком и удаляют из него все «лишнее» — все то, что среднестатистическому человеку невозможно услышать при прослушивании композиций. Как мы уже говорили, если не стремиться слишком сильно сжать композицию, применив наиболее качественный вариант MP3-кодирования, то ее размер будет примерно в 6-10 раз меньше оригинала с CD-качеством, а качество этих двух записей будет идентичным – вряд ли даже профессионал различит их. При более высоких уровнях сжатия потери (их еще называют артефактами сжатия) слышны гораздо сильнее, но тот, кто пользуется сильно сжатой MP3-музыкой, сознательно идет на такой шаг. Например, сильно сжатые MP3 чрезвычайно популярны в среде сотовых телефонов – часто встроенной памяти аппарата не хватает для того, чтобы закачать в него достаточное количество качественных MP3, в результате владелец жертвует качеством записи ради количества. Но вернемся к описанию принципов работы MP3, в частности, к психоакустическим моделям.
Адаптивное кодирование, основанное на психоакустических моделях, применяет различные знания об особенностях восприятия звуков человеком. Так, если одновременно воспроизводятся два звуковых сигнала, один из которых слабее, то более слабый сигнал заглушается (или, как говорят, маскируется) более сильным сигналом. В результате получается, что человек слышит более сильный звук, а более слабый – нет. В таком случае информация о более слабом звуке просто отбрасывается. Точно так же происходит, если сразу после громкого звука идет тихий – громкий звук вызывает временное понижение слуховой чувствительности, в результате – тихий звук оказывается не слышным – информацию о нем так же можно убрать. Так же при обработке музыкальных композиций учитывается то, что большинство людей не способны различить сигналы, мощность которых находится ниже определенного уровня для различных частотных диапазонов.
Битрейт
При MP3-кодировании особенную важность имеет так называемый битрейт (bitrate или ширина потока), который задается при кодировании. Например, уже описанный Audio CD может быть закодирован с максимальным битрейтом 320 Кбит/c (килобит в секунду – этот показатель так же обозначают как kbps, kbs, kb/s) до 128 и ниже. На практике, при битрейте ниже 128 Кбит/с качество звучания падает настолько сильно, что кодировать с подобным битрейтом есть смысл лишь тогда, когда другой альтернативы просто нет.
С одним и тем же битрейтом могут быть закодированы различные исходные материалы, например, звук может быть не стереофоническим, а монофоническим, другой может быть частота дискретизации или размер выборки, однако битрейт – это очень важный интегральный показатель качества MP3-файла. В общем случае, чем он больше – тем это лучше. Очень часто при кодировании MP3-записей Audio CD-качества, можно встретить битрейт 192 Кбит/с – он неплохо подходит для этих целей, однако при прослушивании подобных записей на качественной аудиоаппаратуре (особенно, если сравнить их с оригинальными Audio CD), заметны артефакты сжатия.
Однако, нельзя однозначно утверждать, что любая музыкальная композиция, скажем, записанная на битрейте 192 Кбит/с лучше, чем композиция, записанная на 128 Кбит/с. Многое зависит от самой музыки, от кодировщика, от исходного качества записи, а так же от того, какой тип битрейта использован при записи композиции.
Так, наиболее простой тип битрейта – это постоянный битрейт – или CBR (Constant Bit Rate). Этот битрейт не меняется в течение кодирования всей композиции, то есть каждая секунда звучания, независимо от ее содержимого, кодируется одинаковым количеством бит.
Интереснее выглядит переменный битрейт (VBR, Variable Bit Rate). Он динамически изменяется при кодировании в зависимости от аудиоданных, которые подвергаются обработке. Это наиболее прогрессивный тип кодирования MP3 – при его использовании качество записей повышается, в сравнении с использованием постоянного битрейта, а размер файлов уменьшается. Это происходит из-за того, что более насыщенные участки записи кодируются с более высоким битрейтом, а участки, где высокий битрейт не требуются, кодируются с битрейтом более низким. Основной минус VBR заключается в том, что перед началом кодирования практически невозможно назвать размер выходного файла.
Еще один вариант битрейта называется усредненным битрейтом (ABR, Average Bit Rate) – его можно назвать комбинацией VBR и CBR. Так, перед началом кодирования пользователь задает средний битрейт, а при кодировании программа, используя переменный битрейт, следит за тем, чтобы в итоге битрейт вписался в установленное пользователем ограничение. Качество выходного файла получается, таким образом, хуже, чем при использовании VBR (но немного лучше, чем при использовании аналогичного CBR), однако размер файла поддается гибкой и точной регулировке.
В ходе кодирования исходный аудиосигнал разбивается на участки, которые называются фреймами. Каждый фрейм кодируются отдельно, а при декодировании звуковой сигнал реконструируется из декодированных фреймов. Особый интерес при кодировании MP3 представляет способ обработки стереосигнала – давайте остановимся на этом вопросе подробнее.
Сжатие аудиофайлов делает музыку «злее»
Многие люди не представляют дорогу до работы, спортивную тренировку или домашнюю уборку без музыки. Переносной гаджет и наушники необходимы практически каждому современному человеку. Однако вряд ли кто-то задумывался, какую цену нам приходится платить за гигабайты аудиофайлов в своём смартфоне или планшете.
Речь идёт не о деньгах, конечно. Хотя то, чего лишается человек, может быть более важным и дорогим: настроение и положительный психологический настрой.
Команда исследователей из Гонконгского университета науки и технологий (HKUST) обнаружила, что сжатие аудиофайлов при закачке в телефон приводит к потере «эмоционального контекста» музыки. Причём страдают именно положительные, «счастливые» тона, в то время как негативные и нейтральные сохраняются без изменений.
Собственно, ни для кого не секрет, что файлы в телефоне или планшете имеют довольно низкое качество звучания, однако вряд ли кто-то задумывался, за счёт чего и как именно происходит перевод «живой» музыки в формат, пригодный для считывания компьютером. Исследователи выяснили, что запись определённых музыкальных инструментов при сжатии файла остаётся неизменной, зато другие инструменты теряют часть своего звучания и в большей степени «страдают от деградации». Если говорить более конкретно, частоты выше 20 кГц и ниже 20 Гц просто исчезают.
В ходе экспериментов 20 аспирантов гонконгского вуза (носители английского языка с хорошим слухом) прослушивали записи разных инструментов: саксофона, скрипки, трубы, гобоя, фагота, кларнета, флейты и рожка. Их просили оценить звуки в разных диапазонах звучания (без сжатия, с битрейтом 112, 56 и 32 килобита в секунду) по списку эмоциональных черт: романтических, спокойных, счастливых, застенчивых, таинственных, сердитых, комических, печальных и героических.
Затем исследователи проанализировали ответы, и в итоге оказалось, что большая часть звуков из положительной категории пропадала, когда файлы сжимались. Кроме того, некоторые инструменты (например, трубы) абсолютно потеряли эмоциональный тембр звучания.

Сравнительная шкала для эмоциональной категории «счастье»: при сжатии файла наблюдается снижение положительной эмоциональной составляющей.
Иллюстрация Ronald Mo.
По словам учёных, тем людям, которые серьёзно относятся к качеству звука, стоит ограничить прослушивание сжатых файлов с гаджетов.
Ещё один вывод работы относится к тенденциям современной музыки. Как пишут исследователи, скорее всего, «рычащие» тона и агрессивный тембр стали чаще использоваться исполнителями как раз потому, что такие треки удобнее переводить в сжатый формат.
Этим же фактом можно объяснить возвращение спроса на виниловые альбомы: по данным торговой ассоциации Entertainment Retailers Association (ERA), в 2015 году продажи виниловых пластинок достигли максимальной отметки с 1988 года.
Подробности исследования описаны в научной статье, вышедшей в специализированном издании Journal of the Audio Engineering Society.
Кстати, ранее учёные доказали, что рок-музыка заставляет мужчин чаще ошибаться в настольных играх, а ритмичные мелодии на рабочем месте поднимают командный дух.
MP3 — Википедия
MP3 (более точно, англ. MPEG-1/2/2.5 Layer 3; но не MPEG-3) — это разработанный командой MPEG формат файла для хранения аудиоинформации. Формат был лицензируемым, но 23 апреля 2017 года срок действия всех патентов истёк и лицензионные сборы прекращены.
MP3 является одним из самых распространённых и популярных форматов цифрового кодирования звуковой информации. Он широко используется в файлообменных сетях для оценочного скачивания музыкальных произведений. Формат может проигрываться практически во всех популярных операционных системах, на большинстве портативных аудиоплееров, а также поддерживается всеми современными моделями музыкальных центров и DVD-плееров.
В формате MP3 используется алгоритм сжатия с потерями, разработанный для существенного уменьшения размера данных, необходимых для воспроизведения записи и обеспечения качества воспроизведения звука, близкого к оригинальному (по мнению большинства слушателей), но с ощутимыми потерями качества при прослушивании на качественной звуковой системе. Принцип сжатия заключается в снижении точности некоторых частей звукового потока, что практически неразличимо для слуха на повсеместно распространённой аппаратуре низкой точности воспроизведения звука (например, доминирующее большинство портативных устройств, звуковых карт, музыкальных центров, автомагнитол и прочей не специальной аппаратуры), а также для людей старшего возраста, в связи с естественными возрастными изменениями слухового аппарата, однако в большинстве случаев чётко различимы на аудиотехнике высокой точности воспроизведения. Данный метод называют перцепционным кодированием[4]. При этом на первом этапе строится диаграмма звука в виде последовательности коротких промежутков времени, затем на ней удаляется информация, не различимая человеческим ухом, а оставшаяся информация сохраняется в компактном виде. Данный подход похож на метод сжатия, используемый при сжатии картинок в формат JPEG.[уточнить] При создании MP3 со средним битрейтом 128 кбит/с в результате получается файл, размер которого примерно равен 1/11 от оригинального файла с CD-Audio (само по себе несжатое аудио формата CD-Audio имеет битрейт 1411,2 кбит/с). MP3-файлы могут создаваться с высоким или низким битрейтом, что влияет на качество файла-результата.
MP3 разработан рабочей группой института Фраунгофера (нем. Fraunhofer-Institut für Integrierte Schaltungen) под руководством Карлхайнца Бранденбурга и университета Эрланген-Нюрнберг в сотрудничестве с AT&T Bell Labs и Thomson (Джонсон, Штолл, Деери и др.).
Основой разработки MP3 послужил экспериментальный кодек ASPEC (Adaptive Spectral Perceptual Entropy Coding). Первым кодировщиком в формат MP3 стала программа L3Enc, выпущенная летом 1994 года. Спустя один год появился первый программный MP3-плеер — Winplay3.
При разработке алгоритма тесты проводились на вполне конкретных популярных композициях. Основной стала песня Сюзанны Веги «Tom’s Diner». Отсюда возникла шутка, что «MP3 был создан исключительно ради комфортного прослушивания любимой песни Бранденбурга», а Вегу стали называть мамой MP3.
Почти полный стандарт появился в открытом доступе 6 декабря 1991 года.
23 апреля 2017 года истекли последние патенты на формат и были прекращены сборы лицензионных отчислений с производителей программного обеспечения и встраиваемых решений[5][6]. О прекращении лицензирования формата сообщил Институт Фраунгофера на своём официальном сайте[7]. И, хотя формат mp3 всё ещё весьма популярен среди пользователей, большинство радиостанций и телеканалов перешли на использование современных кодеков, обеспечивающих лучшее сжатие и меньшую потерю качества звука.
Как и формат JPEG, MP3 использует спектральные отсечения, согласно психоакустической модели. Звуковой сигнал разбивается на равные по продолжительности отрезки, каждый из которых после обработки упаковывается в свой фрейм (кадр). Разложение в спектр требует непрерывности входного сигнала, в связи с этим для расчётов используется также предыдущий и следующий фрейм. В звуковом сигнале есть гармоники с меньшей амплитудой и гармоники, лежащие вблизи более интенсивных — такие гармоники отсекаются, так как среднестатистическое человеческое ухо не всегда сможет определить присутствие либо отсутствие таких гармоник. Такая особенность слуха называется эффектом маскировки. Также возможна замена двух и более близлежащих пиков одним усреднённым (что, как правило, и приводит к искажению звука). Критерий отсечения определяется требованием к выходному потоку. Поскольку весь спектр актуален, высокочастотные гармоники не отсекаются, как в JPEG, а только выборочно удаляются, чтобы уменьшить поток информации за счёт разрежения спектра. После спектральной «зачистки» применяются математические методы сжатия и упаковка во фреймы. Каждый фрейм может иметь несколько контейнеров, что позволяет хранить информацию о нескольких потоках (левый и правый канал либо центральный канал и разница каналов). Степень сжатия можно варьировать, в том числе в пределах одного фрейма. Интервал возможных значений битрейта составляет 8-320 кбит/c.
В прошлом было распространено мнение, что запись с битрейтом 128 кбит/c подходит для музыкальных произведений, предназначенных для прослушивания большинством людей, обеспечивая качество звучания Audio-CD. В действительности всё намного сложнее. Во-первых, качество полученного MP3 зависит не только от битрейта, но и от кодирующей программы (кодека) (стандарт не устанавливает алгоритм кодирования, только описывает способ представления). Во-вторых, помимо превалирующего режима CBR (Constant Bitrate — постоянный битрейт) (в котором, проще говоря, каждая секунда аудио кодируется одинаковым числом бит) существуют режимы ABR (Average Bitrate — усреднённый битрейт) и VBR (Variable Bitrate — переменный битрейт). В-третьих, граница 128 кбит/c является условной, так как она была выбрана в эпоху становления формата, когда качество воспроизведения большинства цифровых звуковых систем, как правило, было ниже, чем в настоящее время. Грубо говоря, утверждение о «качестве Audio-CD» при 128 кбит/c соответствует границе относительно комфортного прослушивания музыки, ниже которой возникает сильная деградация звука у всех программ кодирования в формат MP3.
На 2008 год наиболее часто встречаются MP3-файлы с битрейтом 192 кбит/c, что может косвенно говорить о том, что большинство считает этот битрейт достаточным. Реально воспринимаемое «качество» зависит от исходного аудиофайла, слушателя и его аудиосистемы. Некоторые меломаны предпочитают сжимать музыку с «максимальным качеством» — 320 кбит/c, либо даже переходить на кодеки без потерь, например, FLAC. Также среди меломанов бытует мнение, что некоторые семплы (фрагменты аудиозаписи) не поддаются качественному сжатию с потерями: на всех возможных битрейтах не составляет особого труда отличить сжатое аудио от оригинала. Однако есть и серьёзные возражения[8]:
Совершенно очевидно, что (возьмём с запасом) битрейта 256 kbps в подавляющем большинстве случаев должно быть более чем достаточно для комфортного восприятия музыки с CDA-источника (44 kHz/16 bit/stereo). Это очевидно не только из моего доморощенного теста, но и по анализу профессиональных слепых тестов (например, германского издания «c’t», июнь 2000 г.): даже в них экспертам не всегда удаётся «угадать» сжатый до 256 kbps звук, причём тестирование проходит в специально подготовленных помещениях и на дорогом оборудовании, а эксперт знает, что надо «слушать», чтобы почувствовать сжатие.
Существует три версии MP3 формата для различных нужд: MPEG-1, MPEG-2 и MPEG-2.5. Отличаются они возможными диапазонами битрейта и частоты дискретизации:
- 32—320 кбит/c при частотах дискретизации 32000 Гц, 44100 Гц и 48000 Гц для MPEG-1 Layer 3;
- 16—160 кбит/c при частотах дискретизации 16000 Гц, 22050 Гц и 24000 Гц для MPEG-2 Layer 3;
- 8—160 кбит/c при частотах дискретизации 8000 Гц и 11025 Гц для MPEG-2.5 Layer 3.
Режимы управления кодированием звуковых каналов[править | править код]
Так как формат MP3 поддерживает двухканальное кодирование (стерео), существует 4 режима:
- Стерео — двухканальное кодирование, при котором каналы исходного стереосигнала кодируются независимо друг от друга, но распределение бит между каналами в общем битрейте может варьироваться в зависимости от сложности сигнала в каждом канале.
- Моно — одноканальное кодирование. Если закодировать двухканальный материал этим способом, различия между каналами будут полностью стёрты, так как два канала смешиваются в один, он кодируется и он же воспроизводится в обоих каналах стереосистемы. Единственным плюсом данного режима может являться только выходное качество по сравнению с режимом Стерео при одинаковом битрейте, так как на один канал приходится вдвое большее количество бит, чем в режиме Стерео.
- Двухканальное стерео (англ. Dual Channel) — два независимых канала, например, звуковое сопровождение на разных языках. Битрейт делится на два канала. Например, если заданный битрейт 192 кбит/c, то для каждого канала он будет равен только 96 кбит/c.
- Объединённое стерео (англ. Joint Stereo) — способы двухканального кодирования, позволяющие увеличить коэффициент сжатия файла. Первый способ Mid / Side Stereo, когда левый и правый каналы преобразуются в их сумму (L+R) и разность (L−R). Для большинства звуковых файлов насыщенность канала с разностью (L−R) получается намного меньше канала с суммой (L+R). Поэтому объединённое стерео позволяет либо сэкономить на битрейте канала разности (L−R), либо улучшить качество на том же битрейте, поскольку на канал суммы (L+R) отводится бо́льшая часть битрейта. Бытует мнение, что данный режим не подходит для звукового стереоматериала, в котором в двух каналах воспроизводится субъективно абсолютно различный материал, так как он стирает различия между каналами. Но современные кодеки используют различные режимы в разных фреймах (включая чистое стерео) в зависимости от исходного сигнала. Второй способ Intensity Stereo опирается на свойство человеческого слуха различать положение звуков в пространстве не во всём спектре частот, игнорируя положение очень низких и очень высоких. Таким образом, кодирование звуков сверхнизкой и сверхвысокой частоты в режиме моно повышает эффективность сжатия данных.[9]
CBR[править | править код]
CBR расшифровывается как Constant Bit Rate, то есть постоянный битрейт, который задаётся пользователем и не изменяется при кодировании произведения. Таким образом, каждой секунде произведения соответствует одинаковое количество закодированных бит данных (даже при кодировании тишины). CBR может быть полезен для потоков мультимедиа-данных по ограниченному каналу; в таком случае кодирование использует все возможности канала данных. Для хранения данный режим кодирования не является оптимальным, так как он не может выделить достаточно места для сложных отрезков исходного произведения, при этом бесполезно тратя место на простых отрезках. Повышенные битрейты (выше 256 кбит/c) могут решить данную проблему, выделив больше места для данных, но зато и пропорционально увеличивая размер файла.
VBR[править | править код]
VBR расшифровывается как Variable Bit Rate, то есть изменяющийся битрейт или переменный битрейт, который динамически изменяется программой-кодером при кодировании в зависимости от насыщенности кодируемого аудиоматериала и установленного пользователем качества кодирования (например, тишина закодируется с минимальным битрейтом). Этот метод MP3-кодирования является самым прогрессивным и до сих пор развивается и улучшается, так как аудиоматериал разной насыщенности может быть закодирован с определённым качеством, которое обычно выше, чем при установке среднего значения в методе CBR. Плюс к тому, размер файла уменьшается за счёт фрагментов, не требующих высокого битрейта. Минусом данного метода кодирования является сложность предсказания размера выходного файла. Но этот недостаток VBR-кодирования незначителен в сравнении с его достоинствами. Также минусом является то, что VBR считает «незначительной» звуковой информацией более тихие фрагменты, таким образом получается, что если слушать очень громко, то эти фрагменты будут некачественными, в то время как CBR делает с одинаковым битрейтом и тихие, и громкие фрагменты.
Формат VBR постоянно улучшается, благодаря постоянному совершенствованию математической модели кодеков, в частности, после выхода обновлённой версии свободного MP3-кодека LAME (версия 3.99.3), кодирование с переменным битрейтом, по заявлению разработчиков, качественно лучше CBR и тем более ABR. Однако формат CBR 320 кбит/c всё ещё позиционируется как гарантирующий максимальное качество (например он используется в пресете «—preset insane»).
ABR[править | править код]
ABR расшифровывается как Average Bit Rate, то есть усреднённый битрейт, который является гибридом VBR и CBR: битрейт в кбит/c задаётся пользователем, а программа варьирует его, постоянно подгоняя под заданный битрейт. Таким образом, кодек будет с осторожностью использовать максимально и минимально возможные значения битрейта, так как рискует не вписаться в заданный пользователем битрейт. Это является явным минусом данного метода, так как сказывается на качестве выходного файла, которое будет немного лучше, чем при использовании CBR, но хуже, чем при использовании VBR. С другой стороны, этот метод позволяет наиболее гибко задавать битрейт (может быть любым числом между 8 и 320, против исключительно кратных 16 чисел метода CBR) и вычислять размер выходного файла.
Кодеки[править | править код]
Типы программ, необходимые для преобразования форматов файлов. Наиболее распространённые кодеки MP3.
- mp3PRO-codec (использует частотное преобразование SBR).
- LAME-codec.
- Fraunhofer-codec.
MP3-файл состоит из нескольких фрагментов (фреймов) MP3, которые, в свою очередь, состоят из заголовка и блока данных. Такая последовательность фрагментов называется элементарным потоком. Фрагменты не являются независимыми элементами («резервуар байт»), и поэтому не могут быть извлечены произвольно. Блок данных MP3-файла содержит сжатую аудиоинформацию в виде частот и амплитуд. На приведённой диаграмме показано, что заголовок MP3 состоит из маркера, который служит для нахождения верного MP3-фрагмента. За ним следует бит, показывающий, что используется стандарт MPEG, и два бита, показывающие использование layer 3; другими словами, это определяет MPEG-1 Audio Layer 3 или MP3. Последующие значения могут варьироваться в зависимости от типа MP3-файла. Стандарт ISO/IEC 11172-3 определяет диапазон значений для каждой секции заголовка, вместе с общей его спецификацией. Большинство MP3-файлов в настоящий момент содержат ID3-метаданные, которые предшествуют или следуют за MP3-фрагментом; они также отображены на диаграмме.
Теги[править | править код]
Теги (от англ. tag — ярлык, метка, бирка) — метки в границах MP3-файла (в начале и/или в конце). В них может быть записана информация об авторстве, альбоме, годе выпуска, обложка альбома и текст песни и прочая информация о треке. В более поздних версиях тегов возможно хранение прочих данных о звуковой записи. Существуют различные версии тегов (см.: ID3).
Технические недостатки. Количество каналов звука ограничено двумя, в отличие от AAC и Vorbis. Также имеется жёсткое ограничение возможной частоты дискретизации: отсутствует возможность задать произвольную частоту дискретизации. Максимальная частота дискретизации для MP3 — 48 кГц в то время как для Vorbis максимальная частота — 192 кГц, и для AAC — 96 кГц. В MP3 возможно сохранить только в следующих частотах дискретизации: 8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100 и 48000 Гц.
Юридические ограничения. Патентом на MP3 владеет компания Alcatel-Lucent, которая требовала лицензирования некоторых способов использования формата (срок действия связанных с MP3 патентов истёк 23 апреля 2017). В США изобретения, публично раскрытые более года, не могут быть запатентованы; однако для патентов, оформленных до 8 июня 1995 года (почти полный стандарт появился в открытом доступе 6 декабря 1991), существовала возможность увеличить их сроки действия. Известные патенты, касающиеся расшифровки MP3, прекратили действие в США к декабрю 2012; по другим данным, если учитывать только патенты, заявка на которые была подана до декабря 1992 года, этого не произошло в сентябре 2015 года[10][11].
- ↑ M. Nilsson The audio/mpeg Media Type — Internet Engineering Task Force, 2000. — 5 p. — doi:10.17487/RFC3003
- ↑ S. Casner, P. Hoschka MIME Type Registration of RTP Payload Formats — Internet Engineering Task Force, 2003. — 45 p. — doi:10.17487/RFC3555
- ↑ R. Finlayson A More Loss-Tolerant RTP Payload Format for MP3 Audio — Internet Engineering Task Force, 2008. — 22 p. — doi:10.17487/RFC5219
- ↑ Nikil Jayant, James Johnston, Robert Safranek. Signal Compression Based on Models of Human Perception (англ.) // Proceedings of the IEEE (англ.)русск. : journal. — 1992. — October (vol. 81, no. 10). — P. 1385—1422. — DOI:10.1109/5.241504.
- ↑ Конец эпохи mp3. Разработчики формата mp3 объявили о его «смерти» // Газета.Ru, 15.05.2017
- ↑ MP3 окончательно переходит в общественное достояние // Хабрахабр, 3 мая 2017
- ↑ mp3 (англ.). Fraunhofer Institute for Integrated Circuits IIS. Дата обращения 15 мая 2017.
- ↑ Фобомания Журнал «Компьютерра», 14 декабря 2008
- ↑ Joint Stereo (неопр.). Audio Coding (28 января 2015).
- ↑ Cogliati, Josh Patent Status of MPEG-1, H.261 and MPEG-2 (неопр.). Kuro5hin (20 июля 2008). Архивировано 25 февраля 2013 года. This work failed to consider patent divisions and continuations.
- ↑ US Patent Expiration for MP3, MPEG-2, H.264

