Парсер и редактор ID3

Я пишу парсер и редактор ID3. Он уже поддерживает ID3v1, v2.1-2.3. Существуют ли какие-либо другие широко используемые версии или расширения ID3? Например, я читал о теге Enhanced ID3v1 (который предшествует ID3v1) и начинается с TAG+, но я никогда не видел его в файлах MP3. Должен ли я в любом случае реализовать его поддержку?


person Maxim Voloshin    schedule 25.08.2020    source источник
comment
Я бы определенно также поддержал ID3v2.4, он уже используется и поддерживает кодировку текста UTF-8.   -  person fhe    schedule 02.09.2020


Ответы (1)


  • ID3v2.1 никогда не существовало.
  • Да, Enhanced TAG идентифицируется TAG+, который расширяет IDv1.
  • Список всех систем метаданных, ожидаемых в файлах MP3, см. в разделе https://stackoverflow.com/a/62366354 - наивысший приоритет должен иметь ID3v2.4, так как вы чаще всего столкнетесь с теми, кто отличается от ID3v2.3. Затем выберите неофициальные и/или устаревшие файлы, потому что их все еще можно встретить (то, что файлы устаревают, не означает, что они перестают существовать).

При анализе файлов помните о следующих вещах:

  • Файл может иметь оба: теги IDv1 и IDv2.
  • Файл может иметь несколько тегов IDv2 (например, IDv2.3 и IDv2.4). Хотя этого не должно происходить, для вашего синтаксического анализатора не должно возникнуть проблем с приемом нескольких тегов одной и той же версии.
  • ID3v2 не ограничивается файлами MP3 (в отличие от IDv1 и всех его неофициальных расширений).
  • Consider the following parsing order in an MP3 file:
    1. Check for ID3v1 at the end of the file.
    2. Проверьте наличие ID3v1.2 перед ID3v1.
    3. Проверьте наличие Enhanced TAG перед ID3v1.
    4. Проверьте наличие нескольких тегов ID3v2 в начале файла и, что касается ID3v2.4, нижнего колонтитула в конце файла перед всеми тегами, подобными ID3v1.
person AmigoJack    schedule 04.09.2020