APEv2

Материал из свободной русской энциклопедии «Традиция»
Перейти к: навигация, поиск

APEv2 тэги используются для хранения метаданных, таких как название альбома, исполнитель, номер трэка, в аудио файлах. Изначально первые версии тэгов (APEv1) были предназначены для формата Monkey's Audio, но Фрэнк Клемм(Frank Klemm) модифицировал их, добавив заголовок (header), дав этим самым возможность APE тэгам располагаться в начале файла, и также реализовав хранение метаданных в формате юникод.

Впервые этот вариант тэгов был использован в аудиофайлах формата Musepack, но в дальнейшем, из-за простоты и гибкости этого варианта, он был адаптирован как основной формат тэгов для аудифайлов WavPack и OptimFROG, а так же и для Monkey's Audio (с версии 3.99).

Аудиоплэйер Foobar2000 позволяет использовать эти тэги в файлах MP3, вместо стандартных ID3 тэгов, потому что APEv2 тэги легче записывать, и они значительно гибче в использовании. Тем не менее, из-за того, что APEv2 не были изначально ориентированы на использование в MP3 файлах (в отличие от ID3 тэгов), существует ряд проблем. Например, строка APETAGEX является началом APEv2 тэга, а строка TAG - началом ID3v1 тэга. Поэтому если TAG в APETAGEX заканчивается там, где ожидается ID3v1 тэг, то это значение может быть прочитано неверно. Кроме того, ID3 содержат так называемую «схему несинхроницазии» ("unsynchronization scheme"), которая не позволяет аудиоплэйерам проигрывать данные тэгов. Формат APEv2 не поддерживает такую схему, поэтому наличие APEv2 тэга может вызывать ошибки чтения или шумы в конце файла.

Возможности[править]

По формату APEv2 тэги концептуально ближе к «комментариям Vorbis», чем к ID3 тэгам. Так же как и «комментарии Vorbis» они представляют собой неструктурированный пары ключ/значение. Но, в отличие от уже упомянутых «комментариев», эти тэги хранят список значений для каждого ключа, а не ключ для каждого значения. Для примера возьмем трэк, который содержит данные о 2-х исполнителях. В «комментариях Vorbis» эти данные будут хранится как 2 отдельные поля ARTIST, а в тэге APEv2 - как одно поле ARTIST, с двумя значениями, разделенными нуль-символом (байтом со значением равным 0)

Значения APEv2 тэгов могут быть помечены как принадлежащие к типу "text", "binary" или "external”. Из-за этого некоторые продукты для работы с тэгами могут не отображать блоки с нечитаемых данными. Поэтому данные типа binary не могут без проблем сохранятся в «комментариях Vorbis» (хотя это и предусмотрено дизайном этих комментариев)

APEv2 тэги поддерживают юникод, используя UTF-8 для ключей и для значений.

См. также[править]

Внешние ссылки[править]