SMPTE timecode ( / ˈ s ɪ m p t iː / или / ˈ s ɪ m t iː / ) — это набор взаимодействующих стандартов для маркировки отдельных кадров видео или фильма с помощью временного кода . Система определена Обществом инженеров кино и телевидения в спецификации SMPTE 12M. SMPTE пересмотрело стандарт в 2008 году, превратив его в документ из двух частей: SMPTE 12M-1 и SMPTE 12M-2, включая новые пояснения и разъяснения.
Временные коды добавляются к фильмам , видео или аудиоматериалам, а также были адаптированы для синхронизации музыки и театральной продукции . Они обеспечивают временную привязку для редактирования, синхронизации и идентификации. Временной код является формой метаданных медиа . Изобретение временного кода сделало возможным современный монтаж видеокассет и в конечном итоге привело к созданию систем нелинейного монтажа .
Временной код SMPTE представлен в формате час:минута:секунда:кадр и обычно представлен в 32 битах с использованием двоично-десятичного кода . Также имеются флаги пропуска кадров и цветового кадрирования , а также три дополнительных бита флага двоичной группы , используемых для определения использования пользовательских битов. Форматы других разновидностей временного кода SMPTE являются производными от формата линейного временного кода . Более сложные временные коды, такие как временной код вертикального интервала, также могут включать дополнительную информацию в различных кодировках.
Значения времени субсекундного таймкода выражаются в терминах кадров. Обычные поддерживаемые частоты кадров включают:
В общем случае информация о частоте кадров таймкода SMPTE неявная, известная из скорости поступления таймкода с носителя. Она также может быть указана в других метаданных, закодированных в носителе. Интерпретация нескольких бит, включая цветовое кадрирование и биты пропуска кадров , зависит от базовой скорости передачи данных. В частности, бит пропуска кадров действителен только для 29,97 и 30 кадров/сек.
Временные коды генерируются как непрерывный поток последовательных значений данных. В некоторых приложениях используется настенное время , в других закодированное время является условным временем с более произвольной ссылкой. После создания серии записей или после грубого редактирования записанные временные коды могут состоять из прерывистых сегментов.
В общем, невозможно узнать линейный таймкод ( LTC ) текущего кадра, пока кадр не прошел, и к этому времени уже слишком поздно что-либо редактировать. Практические системы отслеживают восходящую последовательность таймкода и выводят время текущего кадра из нее.
Поскольку временные коды в аналоговых системах подвержены битовым ошибкам и выпадениям, большинство устройств обработки временного кода проверяют внутреннюю согласованность в последовательности значений временного кода и используют простые схемы исправления ошибок для исправления коротких всплесков ошибок. Таким образом, граница между прерывистыми диапазонами временного кода не может быть определена точно, пока не пройдут несколько последовательных кадров.
Временной код с пропуском кадров возник из компромисса, введенного при изобретении цветного видео NTSC. Разработчики NTSC хотели сохранить совместимость с существующими монохромными телевизорами. Чтобы минимизировать видимость поднесущей на монохромном приемнике, необходимо было сделать цветовую поднесущую нечетным кратным половины частоты строчной развертки; первоначально выбранным кратным было 495. При частоте кадров 30 Гц частота строчной развертки составляет (30 × 525) = 15750 Гц. Таким образом, частота поднесущей была бы 495/2 × 15750 = 3,898125 МГц.
Это была изначально выбранная частота поднесущей, но тесты показали, что на некоторых монохромных приемниках можно было увидеть интерференционную картину, вызванную биением между цветовой поднесущей и звуковой промежуточной несущей 4,5 МГц. Видимость этой картины можно было значительно уменьшить, снизив частоту поднесущей, кратную 455 (тем самым увеличив частоту биений с приблизительно 600 кГц до приблизительно 920 кГц), и сделав частоту биений также равной нечетному кратному половины частоты строчной развертки. Это последнее изменение можно было бы достичь, подняв звуковую промежуточную несущую на 0,1% до 4,5045 МГц, но проектировщики, обеспокоенные тем, что это может вызвать проблемы с некоторыми существующими приемниками, решили вместо этого уменьшить частоту цветовой поднесущей, а значит, и частоту строчной развертки, и частоту кадров на 0,1%. Таким образом, цветовая поднесущая NTSC оказалась равной 3,579 54 МГц ( 315/88 МГц), частота строчной развертки 15. 734265 кГц ( 9/572 МГц) и частота кадров 29. 970029 Гц ( 30/1.001 Гц). [1]
Измененная частота кадров означала, что час таймкода при номинальной частоте кадров 29,97 кадр/с был длиннее часа обычного времени на 3,6 секунды (для 29,97 невыпадающего таймкода 01:00:00:00 выпадающий таймкод равен 01:00:03;18, а для невыпадающего 00:59:56:12 выпадающий таймкод равен 01:00:00;00), что приводило к ошибке почти в полторы минуты за день. [2]
Чтобы исправить это, был изобретен таймкод SMPTE с пропуском кадров. Несмотря на то, что подразумевает название, при использовании таймкода с пропуском кадров ни один видеокадр не пропускается и не теряется. Вместо этого некоторые таймкоды теряются. Чтобы час таймкода соответствовал часу на часах, таймкод с пропуском кадров пропускает номера кадров 0 и 1 первой секунды каждой минуты, за исключением случаев, когда количество минут делится на десять. [a] Это заставляет таймкод пропускать 18 кадров каждые десять минут (18 000 кадров @ 30 кадров/с) и почти идеально компенсирует разницу в скорости (но все равно накапливает 1 кадр каждые 9 часов 15 минут). [b] [3]
Например, последовательность, когда количество кадров сбрасывается:
За каждую десятую минуту
В то время как таймкод без пропуска отображается с двоеточиями, разделяющими пары цифр — «ЧЧ:ММ:СС:ФФ», — пропущенный кадр обычно представляется с точкой с запятой (;) или точкой (.) в качестве разделителя между всеми парами цифр — ЧЧ;ММ;СС;ФФ , ЧЧ.ММ.СС.ФФ — или просто между секундами и кадрами — ЧЧ:ММ:СС;ФФ или ЧЧ:ММ:СС.ФФ . [c] Пропущенный кадр обычно сокращается до DF, а непропущенный — до NDF.
Бит цветового кадрирования часто используется для обозначения поля 1 цветового кадра, чтобы монтажное оборудование могло гарантировать редактирование только на соответствующих границах последовательности цветовых кадров с целью предотвращения искажения изображения.
В работе телевизионных студий продольный тайм-код генерируется главным синхрогенератором студии и распространяется из центральной точки. Центральные синхрогенераторы обычно получают синхронизацию от атомных часов , используя либо сетевое время , либо GPS . Студии обычно используют несколько часов и автоматически переключаются, если один из них выходит из строя.
Продольный таймкод SMPTE широко используется для синхронизации музыки. Частота кадров 30 кадров/с часто используется для аудио в Америке, Японии и других странах, которые полагаются на частоту сети 60 Гц и используют телевизионный стандарт NTSC . Стандартная частота кадров Европейского вещательного союза 25 кадров/с используется по всей Европе, Австралии и везде, где частота сети составляет 50 Гц и используются телевизионные стандарты PAL или SECAM . [4]
Тайм-код может быть прикреплен к носителю записи несколькими способами.
В конце 1960-х годов существовало несколько итераций тайм-кода (EECO, DaVinci, Seimens и т. д.). Версия, принятая SMPTE, была разработана Лео О'Доннеллом, когда он работал в Национальном совете по кинематографии Канады. Версия Лео ссылалась на время суток и использовала 80-битное слово, полученное из ракетной телеметрии. Было выдано несколько патентов на версию Лео (например, US3877799). С тех пор SMPTE внесла несколько изменений, чтобы идти в ногу с технологиями.
Когда компенсация пропуска кадров применяется к телевизионному тайм-коду NTSC, общее отклонение, накопленное после одного часа, уменьшается примерно до 3,6 мс. Общее отклонение, накопленное за 24-часовой период, составляет примерно 2,6 кадра (~86 мс).