Final Cut Pro X - Метаданные в MP4
Final Cut Pro X распознает временной код и определенные метаданные в файлах MP4, так, как это делает в фильме в формате QuickTime (MOV) файлы. Этот документ описывает формат временного кода и маркеров главы, сохраненных как дорожка в файлах MP4. Это также обсуждает, как метаданные поддержки Final Cut Pro X сохранены в файлах MP4 как пользовательские элементы данных.
Введение
Потребительские Видеокамеры уровня / Полупрофессиональные Видеокамеры уровня и Цифровые видеокамеры для покадровой съемки (DSLRs и DSCs) требуют, чтобы автономный формат медиа-файла перенес полученное аудио/видеоматериалы и метаданные. Формат файла QuickTime [1] удовлетворяет эту потребность очень приятно, однако существует увеличенный уровень интереса среди производителей камеры для спецификации на основе стандарта, таких как MP4.
Это адреса документов такой интерес путем определения формата временного кода и маркера главы отслеживает в Формате файла MP4 [2], заимствования соответствующих определений от Формата файла QuickTime. Кроме того, Apple рекомендует использовать Пользовательский контейнер Данных для хранения невременных метаданных в файле MP4 с ключами, определенными в 3GPP стандарт [5]. Документ также определяет дополнительные ключи метаданных, предназначенные для использования с приложениями редактирования видео, такими как Final Cut Pro X.
Формат файла MP4
Формат файла MP4 является мультимедийным контейнерным форматом файла, определенным как часть стандарта MPEG 4. Официальным названием стандарта является ISO/IEC, 14496-14:2003 [2], часто времена, называемые частью 14 MPEG 4. Это определяет, как сохранить видеопотоки и аудиопотоки, закодированные с определенными кодеками, такими как часть 2 MPEG 4 или часть 10 (H.264/AVC) MPEG 4 и Усовершенствованное кодирование звука (AAC). Формат файла MP4 также используется для хранения текста подзаголовка в MPEG 4 Синхронизированный Текстовый формат (часть 17 [3] MPEG 4).
Формат файла MP4 имеет общие положения для переноса временных метаданных с помощью определений в Формате Медиа-файла Основы ISO (часть 12 [4] MPEG 4), но нет никакой конкретной спецификации, чтобы хранить информацию временного кода или маркеры главы. Существуют очень ограниченные невременные или метаданные ролика (только авторское право) определены в частности для MP4.
Временной код и маркеры главы
Apple рекомендует, чтобы разработчики и производители использовали следующие два типа дорожки для хранения временного кода и маркеров главы в файле MP4:
Дорожка временного кода
Дорожка маркера главы
Эти типы дорожки уже доступны в Формате файла QuickTime. Проект Формата файла MP4 подобен Формату файла QuickTime, поэтому естественно занять эти конструкции, определенные в Формате файла QuickTime, чтобы поддерживать функции в Формате файла MP4. Может, однако, быть надлежащим отбросить устаревший QuickTime определенные конструкции, которые являются неловкими в контексте спецификации ISO.
Дорожка временного кода
Дорожка временного кода в файле MP4 использует конструкции, определенные в Формате файла QuickTime с некоторыми незначительными модификациями.
Текстовая информация о форматировании для отображения временного кода отбрасывается.
Поле Null Media Header (
nmhd) поле используется вместо поля Generic Media Header (gmhd).
Остальная часть функциональности дорожки Временного кода QuickTime, такой как 64-разрядная поддержка временного кода, сохраняется.
Информация о носителях временного кода
Следующие разделы описывают поля под полем Media (mdia) это указывает дорожку временного кода.
Ссылочное поле обработчика
Тип обработчика tmcd в поле Handler Reference (hdlr) под полем Media (mdia), как определено в Спецификации [1] Формата файла QuickTime. Это указывает, что дорожка содержит информацию о временном коде.
Поле заголовка информации о носителях
Для дорожки временного кода, поле Null Media Header (nmhd) используется в качестве заголовка информации о носителях. Это в отличие от поля Generic Media Header (gmhd) используемый в дорожке Временного кода QuickTime.
В отличие от дорожки Временного кода QuickTime, нет никакого поля Timecode Media Information (tcmi). Информация в этом поле о форматировании временного кода как текст. Учитывая временной код метаданные, информацию о форматировании больше не считают релевантной, и поэтому отбрасывают.
Демонстрационная запись временного кода
Демонстрационная запись дорожки временного кода использует ту же структуру в качестве Демонстрационного Описания Временного кода, определенного в фильме в формате QuickTime спецификация [1] Формата файла, за исключением исходного поля ссылки. Демонстрационное определение Записи Временного кода представлено в Перечислении 1 с той же нотацией, используемой в спецификации [2] MP4.
Демонстрационное определение Записи Временного кода перечисления 1
class TimecodeSampleEntry(codingName) extends SampleEntry(codingName) { |
const unsigned int(32) reserved = 0; |
unsigned int(32) flags; |
int(32) timescale; |
int(32) frameDuration; |
int(8) numFrames; |
const unsigned int(8) reserved = 0; |
} |
codingName поле является одним из следующего:
tmcd— Для 32-разрядных выборок временного кода.tc64— Для 64-разрядных выборок временного кода.
flags поле содержит следующие флаги:
Кадр отбрасывания (
0x0000001) — Указывает, является ли временной код кадром отбрасывания. Если флаг установлен, это - кадр отбрасывания.24-часовой макс. (
0x0000002) — Указывает ли обертки временного кода после 24 часов. Если флаг установлен, это переносится.Отрицательные времена OK (
0x0000004) — Указывает, позволяются ли отрицательные временные стоимости. Если флаг установлен, отрицательные величины позволяются.Счетчик (
0x0000008) — Указывает, является ли значение временного кода, которое представляет эта дорожка, значением счетчика ленты. Если флаг установлен, это - значение счетчика ленты.
timescale поле указывает масштаб времени для frameDuration поле.
frameDuration поле указывает, сколько времени каждый кадр длится в режиме реального времени.
numFrames поле содержит число кадров в секунду для формата временного кода. Если временной код является счетчиком, это - число кадров для каждой встречной галочки.
Это - точно то же как Демонстрационное Описание Временного кода QuickTime, за исключением того, что отбрасывается исходное ссылочное расширение.
Выборки временного кода
Демонстрационный формат совпадает с Дорожкой Временного кода QuickTime. Когда данные идут от одного формата до другого, нет никакой потребности в транскодировании.
Ссылка дорожки временного кода
Apple не рекомендует использовать ссылки дорожки, указывающие определенную ассоциацию к другим дорожкам носителей. Обычно дорожка временного кода представляет временной код для всего полученного фильма, и поэтому никакая ссылка дорожки не требуется.
Дорожка маркера главы
Маркер Главы отслеживает текстовые маркеры главы хранилищ в файле MP4 как дорожка недоступного текста со ссылкой дорожки, идентифицирующей дорожку как дорожку маркера главы. Это использует конструкции, определенные в Спецификации Формата файла QuickTime с помощью незначительных модификаций.
Информация о носителях маркера главы
Следующие разделы описывают поля под полем Media (mdia) это указывает дорожку маркера главы.
Ссылочное поле обработчика
Тип обработчика установлен в text в поле Handler Reference (hdlr) под полем Media (mdia). Это указывает, что дорожка содержит текстовые данные.
Поле заголовка информации о носителях
Для дорожки Маркера Главы, поле Null Media Header (nmhd) используется в качестве заголовка информации о носителях. Это в отличие от поля Generic Media Header (gmhd) поле используется в Текстовой дорожке QuickTime.
Демонстрационная запись производителя главы
Хранить информацию, определенную для выборок Маркера Главы, TextSampleEntry определенный в MPEG 4 Синхронизированный Текстовый формат [3], первоначально определенный в 3GPP Синхронизированный Текстовый формат [6], используется. Поскольку маркеры главы рассматривают как метаданные и не часть представления, всей текстовой информации о форматировании, такой как шрифт, стиль, текстовое поле, цвет и выравнивание, проигнорированы.
Демонстрационный формат маркера главы
Выборка Маркера Главы является серией символов Unicode, или в UTF-16 или в UTF-8, которому предшествует 16-разрядное целое без знака, указывающее число байтов, которые приводит в рабочее состояние ряд. Если размер выборки носителей больше, чем число обозначенных байтов, дополнительные данные проигнорированы. Если UTF-16 используется, должен быть BOM (Знак Порядка байтов) в начале серийного формата указания и порядка байтов символов Unicode.
Это - подмножество MPEG 4 Синхронизированный текстовый Демонстрационный Формат [3]. Нет никакой информации о форматировании. Достаточно просто транскодировать MPEG 4 Синхронизированная Текстовая дорожка в дорожку Маркера Главы путем простого снятия изоляции с информации о форматировании.
Поле заголовка дорожки маркера главы
Чтобы указать, что текстовые выборки в дорожке маркера главы не являются частью представления, дорожка маркера главы должна быть отключена. Для этого установите track_enabled флаг, который является нулевым битом поля флагов, к 0.
Ссылка дорожки маркера главы
Ссылка дорожки типа chap от включенной дорожки до Маркера Главы должна существовать дорожка, как это с дорожкой Маркера Главы в фильме в формате QuickTime.
Метаданные ролика
Для клипа (или невременный) метаданные, Apple рекомендует использовать Пользовательский контейнер Данных и элементы метаданных хранилища как пользовательские элементы данных с пользовательскими ключами данных, каждый из которых является четырьмя кодами символа. Это обеспечивает достаточную функциональность для переноса ориентированных на текст элементов метаданных с определением языка. 3GPP формат файла [5] определяет больше чем дюжину пользовательских ключей данных, и Apple рекомендует следовать тем определениям. Следующие три ключа в настоящее время поддерживаются Final Cut Pro X:
titl– Заголовок для носителей.cprt– Информация об организации, содержащей авторское право на медиа-файл.auth– Автор носителей.
Приложение A: 3GPP Пользовательские Ключи Данных перечисляет ключи метаданных, определенные в 3GPP Выпуск 12 [5]. Обратитесь к спецификации [5] для определений пользовательских типов данных.
Apple также определяет дополнительные пользовательские ключи данных для видео приложений, таких как Final Cut Pro X, таких как производитель и имя модели камеры. Приложение B: Пользовательские Ключи Данных Редактирования видео содержат список тех пользовательских ключей данных. Обратите внимание на то, что строковое значение для ключа даты создания, как ожидают, будет в формате [7] ISO 8601 строки даты.
В отличие от этого с ключами QuickTime Metadata, нет безопасного способа представить закрытые ключи для пользовательских ключей данных. Для файла MP4 частные метаданные должны быть сохранены в поле UUID, как определено в формате [4] Медиа-файла Основы ISO.
Ссылки
[1] Спецификация формата файла QuickTime, 2012, Apple Inc.
[2] Часть 14 MPEG 4: формат файла MP4; ISO/IEC 14496-14:2003, Международная организация по стандартизации
[3] Часть 17 MPEG 4: Потоковая передача текстового формата; ISO/IEC 14496-17:2006, Международная организация по стандартизации
[4] Часть 12 MPEG 4: ISO базирует формат медиа-файла; ISO/IEC 14496-12:2012, Международная организация по стандартизации
[5] 3GPP TS 26.244 v12.1.0: 3GPP формат файла (3GP) (Выпуск 12), Проект Партнерства третьего поколения
[6] 3GPP TS 26.245 V12.0.0: 3GPP Синхронизированный текстовый формат (Выпуск 12), Проект Партнерства третьего поколения
[7] Элементы данных и форматы обмена - Обмен информацией - Представление дат и времени; ISO 8601:2004, Международная организация по стандартизации
Приложение A: 3GPP пользовательские ключи данных
Обратитесь к [5] для определения пользовательских типов данных.
Ключ | Имя | Ввести | Описание |
|---|---|---|---|
titl | заголовок | строка | Заголовок носителей. |
dscp | описание | строка | Заголовок или описание для носителей. |
cprt | авторское право | строка | Заметьте об организации, содержащей авторское право на носители. |
перфект | исполнитель | строка | Исполнитель или художник для носителей. |
автор | Автор | строка | Автор носителей. |
gnre | жанр | строка | Жанр (категория или стиль) носителей. |
rtng | оценка | пользовательский | Оценка носителей, включая объект оценки и критерии оценки. |
clsf | классификация | пользовательский | Классификация носителей, включая объект классификации и индекс, указывающий таблицу классификации. |
kywd | ключевое слово | список строк | Ключевые слова носителей. |
местоположения | расположение | пользовательский | Информация о расположении, включая имя расположения, роль, долготу, широту, высоту, астрономическую организацию и примечания. |
albm | альбом | пользовательский | Название альбома и номер дорожки для носителей. |
yrrc | запись года | целое число | Запись года для носителей. |
колледж | набор | строка | Имя набора, от которого носители прибывает из. |
урат | пользовательский рейтинг | целое число | Звезда пользователя, оценивающая для носителей. |
thmb | миниатюра | пользовательский | Изображение миниатюр носителей. |
Приложение B: пользовательские ключи данных редактирования видео
Ключ | Имя | Ввести | Описание |
|---|---|---|---|
manu | производитель | строка | Имя производителя камеры. |
modl | имя модели | строка | Имя модели камеры. |
slno | последовательный нет | строка | Порядковый номер камеры. |
clid | клип ID | строка | Идентификатор клипа. |
clfn | отсеките имя файла | строка | Имя файла клипа. |
cmid | камера ID | строка | Идентификатор камеры. |
cmnm | имя камеры | строка | Имя, идентифицирующее камеру. |
барабан | барабан | строка | Имя бобины с лентой. |
scen | сцена | строка | Имя сцены для клипа. |
выстрел | выстрел | строка | Имя, идентифицирующее выстрел. |
angl | угол | строка | Имя угла камеры, полного, который был застрелен клип. |
дата | дата создания | строка | Дата и время, отформатированная согласно ISO 8601, когда запустилась запись клипа. |
История версии документа
| Дата | Примечания |
|---|---|
| 18.12.2013 | Новый документ, описывающий формат временного кода и других метаданных Final Cut Pro X, распознает в файлах MP4. |