Формат тега синхронизированных текстов песен mp4

Я пишу программу для встраивания метаданных в файлы .m4a, например:

  • заголовок
  • художник
  • тексты песен
  • и т. д...

Информация, которую я нашел, наводит на мысль, что тег «lyrics» поддерживает синхронизированные тексты песен (что, кстати, было бы идеально).

Проблема, которую я пытаюсь решить, заключается в том, что я не смог найти никакой информации или документации о том, в каком формате писать синхронизированные тексты (например: [mm:ss.xxx]lyrics / (milliseconds) lyrics / и т. д.).

Для контекста я использую библиотеку мутагенов в Python.

Вы рассматривали субтитры типа *.SRT?

Stas Simonov 17.08.2024 20:58

@StasSimonov, как бы вы встроили файл .srt в аудиофайл m4a?

ToboBaldo 18.08.2024 13:13

Файл m4a — это просто MP4 без видеопотока. В этом ответе StackOverflow показано, как добавить дорожку субтитров с помощью ffmpeg. Более серьезный вопрос заключается в том, чтобы найти музыкальный проигрыватель, который бы его читал. Если только вы не использовали видеоплеер, такой как VLC.

StarGeek 18.08.2024 16:11
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
3
92
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Наиболее официальной спецификацией тега lyrics m4a (mp4) является Спецификация музыки Apple.
TL;доктор - 02:08.957

Они определяют это следующим образом

you can use the <lyrics> tag to deliver the lyrics in plain text

Отслеживать заметки набора текстов

Используемый формат называется TTML.
. Временные метки имеют вид 02:05.936.
. Выдержка из приведенных выше документов:

    <div begin = "01:55.855" end = "02:16.755" itunes:song-part = "Outro">
      <p begin = "01:55.855" end = "01:58.807" ttm:agent = "v1">City of stars</p>
      <p begin = "01:59.104" end = "02:02.506" ttm:agent = "v1">Are you shining just for me?</p>
      <p begin = "02:05.936" end = "02:08.957" ttm:agent = "v1">City of stars</p>
      <p begin = "02:10.380" end = "02:16.755" ttm:agent = "v2">You never shined so brightly</p>
    </div>

Другие вопросы по теме