Комментарии (программирование)
- 1 year ago
- 0
- 0
Комментарии Vorbis — это контейнер для метаданных , используемый в форматах аудиофайлов Vorbis , FLAC , и Speex . Он позволяет добавить к самому файлу такую информацию о файле, как заголовок, исполнитель, альбом, номер трека и др. Тем не менее, как отмечает официальная документация Ogg Vorbis:
[Заголовок комментария] предназначен для коротких, текстовых комментариев, не для произвольных метаданных; произвольные метаданные предназначены для отдельного логического битового потока (обычно потока XML), который обеспечивает лучшую структуру и пригодность для машинного анализа.
Тег Vorbis — это список полей в формате
ИмяПоля=Данные
. Имя поля может состоять из печатаемых
ASCII
символов, 0x20 (пробел) — 0x7D («}»), исключая 0x3D («=») и 0x7E («~»). Оно не чувствительно к регистру, так что
artist
и
ARTIST
— одно и то же поле. Количество полей и их длина ограничены величиной 4 294 967 295 (максимальное значение 32-
битного
целого), но большинство приложений для редактирования тегов налагают более строгие ограничения.
Данные кодируются в UTF-8 , так что любая строка Unicode может быть использована как значение.
Разрешены любые имена тегов, и не существует формата для значения данных. Это отлично от весьма структурированного формата
ID3
, используемого для файлов
MP3
. Разрешено также использовать имена полей более чем однажды. Эта возможность используется для поддержки множественных значений, например два поля
artist=...
для перечисления обоих исполнителей одной композиции.
Спецификация дает несколько образцов имен тегов, таких как title ( Заголовок ) и tracknumber ( НомерТрека ). Большинство приложений также поддерживает распространённые de facto стандарты, такие как discnumber ( НомерДиска ) и теги для информации Replay Gain .
В комментариях Vorbis не предусмотрено хранение двоичных данных. Это сделано намеренно — комментарии предназначены для использования как часть формата контейнера, такого как Ogg , и любые дополнительные двоичные данные следует кодировать напрямую в контейнер.