Введение

Контейнер метаданных

ID3 — это контейнер метаданных, который чаще всего используется вместе с аудиоформатом MP3. Он позволяет хранить в самом файле информацию, такую как название, исполнитель, альбом, номер трека и другие сведения о файле. ID3 является де-факто стандартом для метаданных в MP3-файлах; ни один орган по стандартизации не участвовал в его создании и не присваивал ему официальный статус. Он конкурирует с тегом APE в этой области. Существуют две не связанные между собой версии ID3: ID3v1 и ID3v2. В ID3v1 метаданные хранятся в сегменте размером 128 байт в конце файла. В ID3v2 используется расширяемый набор "фреймов", расположенных в начале файла. Существуют подварианты обеих версий.

ID3v1

Когда стандарт MP3 был опубликован в 1995 году, он не предусматривал способа хранения метаданных файлов. В 1996 году Эрик Кемп предложил добавить 128-байтовый суффикс к файлам MP3, в котором можно было бы хранить полезную информацию, такую как имя исполнителя или название альбома. Кемп намеренно размещал данные тега (отмеченные 3-байтовой строкой) в конце файла, поскольку это приводило к кратковременному потрескиванию при воспроизведении на старых медиаплеерах, не поддерживающих теги. Этот метод, получивший название ID3v1, быстро стал де-факто стандартом для хранения метаданных в MP3, несмотря на недостатки в плане интернационализации и локализации, вызванные использованием системы кодирования ISO 8859-1 вместо более универсальной Unicode. Тег v1 предоставляет 30 байт для названия, исполнителя, альбома и «комментария», 4 байта для года и 1 байт для обозначения жанра песни из предопределенного списка.

ID3v1.1

В 1997 году Майкл Мутчлер предложил модификацию ID3v1, в которой два байта, ранее отведённые для поля комментариев, стали использоваться для хранения номера трека, чтобы альбомы, разбитые на несколько файлов, можно было правильно упорядочить. Модифицированный формат получил название ID3v1.1. Распространение ID3v1.2 было ограничено.

ID3v2

В 1998 году новая спецификация под названием ID3v2 была разработана группой авторов. Несмотря на название ID3, её структура полностью отличается от структуры ID3v1. Теги ID3v2 имеют переменный размер и обычно располагаются в начале файла, что обеспечивает немедленную загрузку метаданных, даже при постепенной загрузке файла целиком во время потоковой передачи. Тег ID3v2 состоит из ряда необязательных фреймов, каждый из которых содержит фрагмент метаданных объемом до 16 МБ. Например, может быть включен фрейм для хранения названия. Общий размер тега может достигать 256 МБ, а строки могут быть закодированы в Unicode.

ID3v2.2

Первый публичный вариант v2, ID3v2.2, заменил трехсимвольные идентификаторы фреймов (например, ) на четырехсимвольные идентификаторы фреймов (например, ) чтобы избежать путаницы между схожими кодами. Большинство распространенных фреймов v2.3 и v2.4 имеют прямые аналоги в v2.2, но v2.2 теперь считается устаревшим.

ID3v2.3

ID3v2.3 — наиболее распространенная версия тегов ID3v2, широко поддерживаемая проводником Windows и Windows Media Player. Важно отметить, что именно она впервые позволила встраивать изображения, например, обложки альбомов. В этой версии даже предусмотрено место для указания номера диска, однако это поле редко используется в сети Интернет.

ID3v2.4

ID3v2.4 был опубликован 1 ноября 2000 года. Он определяет 83 типа фреймов, допускает наличие нескольких значений, разделенных нулевым байтом, в текстовых фреймах, и позволяет хранить тег либо в начале, либо в конце файла.

Главы

В декабре 2005 года было опубликовано дополнение к ID3v2 для глав. Оно позволяет пользователям легко переходить к конкретным местам или главам внутри аудиофайла, а также может обеспечивать синхронизированное слайд-шоу изображений и заголовков во время воспроизведения. Типичные области применения включают в себя расширенные подкасты, и его можно использовать в тегах ID3v2.3 или ID3v2.4.

Текст песни

Lyrics3v1 и Lyrics3v2 – это стандарты тегов, реализованные до ID3v2, для добавления текстов песен в MP3-файлы. Отличие от ID3v2 заключается в том, что Lyrics3 всегда располагается в конце MP3-файла, непосредственно перед тегом ID3v1.

Редактирование тегов ID3

Теги ID3 можно редактировать разными способами. Специализированные приложения, называемые редакторами тегов, обеспечивают точное редактирование всех полей или фреймов и позволяют выполнять пакетное редактирование, а многие аудиоплееры предоставляют встроенные возможности редактирования наиболее распространенных полей или фреймов. Некоторые файловые менеджеры также поддерживают редактирование тегов.

НеMP3 реализация

Теги ID3 были разработаны для формата MP3, но наборы тегов являются независимой частью MP3-файла и могут использоваться в других местах. Теги ID3v2 иногда применяются к файлам AIFF и WAV, а MP4 поддерживает встраивание тегов ID3.