ID3 — это контейнер метаданных

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

Существуют две несвязанные версии ID3: ID3v1 и ID3v2. ID3v1 принимает форму 128- байтового сегмента в конце файла MP3, содержащего фиксированный набор полей данных. ID3v1.1 - небольшая модификация, добавляющая поле "номер трека" за счет небольшого укорочения поля "комментарий". ID3v2 структурно очень отличается от ID3v1, состоящего из расширяемого набора «кадров», расположенных в начале файла, каждый из которых имеет идентификатор кадра (трех- или четырех байтовая строка) и один фрагмент данных. В спецификации ID3v2.4 объявлено 83 типа фреймов, и приложения также могут определять свои типы. Есть стандартные рамки для размещения обложки, BPM, авторские права и лицензии, тексты песен и произвольные текстовые и URL-данные, а также другие вещи. Были задокументированы три версии ID3v2, каждая из которых расширила определения фреймов.

ID3 является стандартом де-факто для метаданных в файлах MP3; ни один орган по стандартизации не участвовал в его создании, и такая организация не предоставила ему официальный статус утверждения. В этой области он конкурирует с тегом APE .

Lyrics3v1 и Lyrics3v2 были стандартами тегов, реализованными до ID3v2, для добавления текстов песен в файлы mp3. Разница с ID3v2 заключается в том, что Lyrics3 всегда находится в конце файла MP3 перед тегом ID3v1.
Строки дополняются пробелами или нулями. Неустановленные строковые записи заполняются пустой строкой. ID3v1 имеет длину 128 байт.

Стандарт MP3 не включал метод хранения метаданных файлов. В 1996 году Эрику Кемпу пришла в голову идея добавить в аудио файл небольшой фрагмент данных, решив тем самым проблему. Метод, теперь известный как ID3v1, быстро стал стандартом де-факто для хранения метаданных в MP3.

Тег ID3v1 занимает 128 байт , начиная со строки TAG 128 байт от конца файла. Тег был помещен в конец файла для обеспечения совместимости со старыми медиаплеерами . Некоторые игроки воспроизводили небольшой всплеск статики, когда читали тег, но большинство его игнорировало, и почти все современные плееры корректно пропускают его. Этот тег позволяет выделить по 30 байт для названия, исполнителя, альбома и «комментария», четыре байта для года и байт для определения жанра песни из предопределенного списка из 80 значений ( позже Winamp расширил этот список до 148 значений).

Одно улучшение ID3v1 было сделано Майклом Мутчлером в 1997 году. Поскольку поле комментария было слишком маленьким, чтобы написать что-нибудь полезное, он решил обрезать его на два байта и использовать эти два байта для хранения номера дорожки. Такие теги называются ID3v1.1.

ID3v1 заранее определяет набор жанров, обозначаемых числовыми кодами. Winamp расширил список, добавив больше жанров в свой собственный музыкальный проигрыватель, которые позже были приняты другими (хотя некоторые из них имеют сомнительную ценность: например, «Primus» — это одна конкретная группа, а не жанр, а «Negerpunk» кажется расистским). шутка на шведском языке). Однако поддержка расширенного списка Winamp не универсальна. В некоторых случаях поддерживаются только жанры до 125.