Постоянная и переменная частота кадров и почему видеоредакторы «жалуются» на VFR-видео с телефона
Обновлено:
Частота кадров — это количество изображений в секунду в видео: обычные значения — 24, 25, 30 или 60. При постоянной частоте кадров (CFR) каждый кадр длится ровно одно и то же время. При переменной частоте кадров (VFR) интервал между кадрами меняется по ходу записи.
Большинство зрителей никогда не замечают разницы, потому что видеоплееры просто показывают каждый кадр в соответствии с его меткой времени. С видеоредакторами всё иначе. Если вы когда-нибудь импортировали видео с телефона и видели, как звук постепенно рассинхронизируется с картинкой, или получали предупреждение о переменной частоте кадров, это руководство объяснит, что происходит и как это исправить.
Почему телефоны и программы записи экрана используют переменную частоту кадров
Камера телефона должна в реальном времени снимать, обрабатывать и кодировать каждый кадр на маленьком чипе, работающем от аккумулятора. При слабом освещении она может увеличивать выдержку, из-за чего на каждый кадр остаётся меньше времени; при высокой нагрузке она может время от времени пропускать кадры. Вместо того чтобы выдумывать кадры ради идеального ритма, телефон записывает каждый кадр с его реальной меткой времени. В результате номинально получается 30 fps, но фактически частота колеблется, скажем, от 28 до 30.
Программы записи экрана, захвата игр и записи видеозвонков делают нечто подобное намеренно: когда на экране ничего не меняется, хранить одинаковые кадры бессмысленно, поэтому их записывается меньше. Это экономит место и вычисления — вот почему VFR так распространена именно в тех видео, которые люди приносят в видеоредактор.
Почему видеоредакторам трудно с VFR
Программы для монтажа построены вокруг таймлайна, разделённого на равные ячейки для кадров. Когда кадры клипа идут неравномерно, редактор должен решить, как разложить их по этой сетке. Некоторые программы принимают фиксированную частоту, исходя из среднего значения, и растягивают или сжимают клип, — поэтому звук, записанный непрерывно со своей частотой дискретизации, постепенно рассинхронизируется, и часто это становится заметно лишь через несколько минут длинной записи.
Среди других симптомов — прерывистое воспроизведение на таймлайне, кадры, которые повторяются дважды или пропускаются, длительность клипов, немного отличающаяся от исходной, и склейки, которые оказываются на кадр в стороне от того места, куда вы их поставили. Adobe Premiere Pro, например, распознаёт VFR-видео и предлагает настройку для сохранения синхронизации звука, которая во многих случаях помогает, но не всегда даёт плавное движение. Самое надёжное решение для любого редактора — конвертировать клип в постоянную частоту кадров перед импортом.
Как узнать, переменная ли частота кадров у видео
Бесплатное приложение MediaInfo показывает для каждой видеодорожки поле Frame rate mode («Режим частоты кадров»); у VFR-файлов в нём указано Variable («Переменная»), а часто также минимальная и максимальная частота. Некоторые редакторы при импорте показывают предупреждение или значок VFR. Если ни того, ни другого у вас нет, считайте, что записи с телефона, записи экрана и игровые ролики имеют VFR, пока не доказано обратное.
Конвертация VFR в постоянную частоту кадров
Конвертация в CFR означает перекодирование видео с фиксированной частотой кадров. Там, где в исходнике пропуск, кодировщик повторяет предыдущий кадр; там, где кадры идут плотнее, чем позволяет целевая частота, он отбрасывает один из них. Поскольку кадры расставляются по их реальным меткам времени, звук остаётся синхронным, а длительность сохраняется.
На MediaConverter.io конвертер видео и компрессор видео обычно выдают видео с постоянной частотой кадров. Если браузер может декодировать клип, а выходной формат — MP4, MOV, MKV или WebM (это покрывает типичное видео с телефона), они устанавливают фиксированную частоту кадров по среднему значению исходника, округлённому вверх до целого числа (29,97 fps превращаются в 30), и размещают каждый кадр на этой сетке. Отдельной настройки частоты кадров в этих инструментах нет. Другие выходные форматы или файлы, которые браузер не может декодировать, обрабатываются запасным кодировщиком: у компрессора он всё равно задаёт постоянную частоту, но ограничивает её 30 fps, а у конвертера может скопировать исходный видеопоток без изменений, включая тайминги VFR. Видеоредактор позволяет напрямую выбрать частоту кадров при экспорте — от 20 до 60 fps.
- Чтобы подготовить клип с телефона к монтажу, пропустите его через конвертер видео и оставьте разрешение и битрейт по умолчанию, чтобы результат остался близким к исходному качеству.
- Если файл к тому же слишком большой, компрессор видео за один проход и переведёт его в CFR, и уменьшит размер.
- Импортируйте сконвертированный файл в редактор и проверьте синхронизацию ближе к концу клипа, где рассинхронизация заметнее всего.
Выбор частоты кадров
По возможности сохраняйте частоту кадров, с которой видео было снято. Конвертация 30 fps в 24 fps или 60 fps в 25 fps заставляет кодировщик отбрасывать кадры неравномерно, из-за чего движение может выглядеть дёрганым. Если вы сводите в одном проекте разные клипы, задайте для проекта частоту, которую использует большая часть материала, и пусть редактор сконвертирует остальное.
Для интернета 30 fps — надёжное значение по умолчанию, а 60 fps стоит сохранять для игрового видео, спорта и быстрых движений камеры. Кинематографичные 24 fps имеют смысл, только если видео так и снималось.
Как избежать VFR с самого начала
Некоторые приложения камеры на телефонах и большинство отдельных камер записывают с постоянной частотой, а в настройках ряда программ записи экрана есть опция постоянной частоты кадров. Хорошее освещение тоже помогает телефонам держать стабильную частоту. Но для уже отснятого видео быстрая конвертация в CFR перед монтажом обычно самый безболезненный путь.
Инструменты из этого руководства
Частые вопросы
01
02
03