Перейти к основному содержимому
SubtitleMatrix

50 fps → 25 fps

ТаймингСмена частоты кадров
Или вставьте текст субтитров

Параметры

В какой частоте кадров считается тайминг. На страницах форматов это то, что нужно MicroDVD: он хранит время в номерах кадров. На страницах частоты кадров это частота, по которой файл был рассчитан, — версия, для которой делались субтитры, — а второе поле страницы принимает частоту видео, с которым вы будете их использовать. Обычные значения: 23,976, 24, 25, 29,97, 30, 50, 59,94 и 60. Ошибка сдвигает весь таймлайн, а на страницах частоты кадров — на коэффициент, а не на фиксированную величину.

Частота кадров версии, с которой вы будете использовать субтитры, — видео, которое действительно будете проигрывать. Применяемый коэффициент — первое поле, делённое на это; так 24 в 25 дают 0,96: фильм идёт на PAL на 4% быстрее, и 100-минутная картина помещается на 96-минутную кассету. Если перепутать поля местами, весь таймлайн сдвинется в неверную сторону на ту же величину.

Эта страница берёт файл, чей тайминг считали по 50 кадрам в секунду, и переносит его на версию 25 fps. Каждый таймкод удваивается, поэтому реплика, которая говорила тридцать секунд, означает минуту, а последняя реплика двенадцатиминутного эпизода оказывается на двадцати четырёх минутах. Оба поля уже заполнены; измените их, если ваш файл считали по другой частоте.

Ошибка здесь в подсчёте, а не в проигрывании: европейский материал высокой чёткости часто идёт на 50 кадрах или 50 полях в секунду, и инструмент, который считает поля, выдаёт числа вдвое больше, чем тот же план, посчитанный кадрами, поэтому дорожка выходит ровно вдвое короче нужного. Что меняется: оба края каждой реплики удваиваются, поэтому секундная строка получает две секунды, а скорость чтения падает, а не растёт; текст не меняется, в MicroDVD правится только объявление частоты, и ничего не загружается на сервер.

Примеры

Всё удваивается

Вход

1
00:00:01,000 --> 00:00:03,000
Hello there.

2
00:01:00,000 --> 00:01:02,000
One minute in.

Выход

1
00:00:02,000 --> 00:00:06,000
Hello there.

2
00:02:00,000 --> 00:02:04,000
One minute in.

50, делённое на 25, — ровно 2, поэтому ничего не округляется и ничего не уезжает: реплика на одной секунде становится двухсекундной, реплика на минуте — двухминутной, и каждая висит на экране вдвое дольше. Если после пересчёта начало выглядит верно, а картинка кончается раньше субтитров, пара была не та: коэффициент два слишком велик, чтобы быть случайностью округления.

Подсказка — длина самого файла

Вход

1
00:11:59,000 --> 00:11:59,500
Last cue of the episode.

Выход

1
00:23:58,000 --> 00:23:59,000
Last cue of the episode.

Двенадцатиминутный эпизод, чей последний субтитр стоит на двадцати трёх минутах пятидесяти восьми секундах, — это диагноз сам по себе, до всякой арифметики: дорожка вдвое длиннее видео. Сравните с парами растущей ошибки в группе, где общая длина файла всё ещё правдоподобна и заметно выбивается только конец.

Файл MicroDVD сохраняет номера кадров

Вход

{1}{1}50
{250}{300}Hello

Выход

{1}{1}25
{250}{300}Hello

Для MicroDVD исправление действительно состоит только в объявленной частоте: файл, чьи кадры считали по 50, а читают по 25, показывает каждую реплику вдвое позже, и смена объявления на 25 ставит всё на место, не трогая ни одного номера кадра. Кадр 250 — это десять секунд при 25 fps и пять при 50, и десять — там, где эта реплика должна быть.

Частые вопросы

Как тайминг субтитров оказывается посчитан по 50 fps?

Обычны три пути. Европейский материал высокой чёткости — это 50i или 50p, и инструмент, который считает поля, а не кадры, выдаёт числа вдвое больше, чем тот же план, посчитанный кадрами. Экспорт субтитров из проекта 50 fps, сданный на мастер 25 fps, несёт ту же проблему. И рабочий процесс с покадровыми субтитрами, оставленный на 50, тогда как сдача идёт на 25, даёт файл, посчитанный по одной частоте и проигрываемый по другой.

Какой коэффициент у 50 → 25 и как это выглядит?

Ровно 2, поэтому файл выходит вдвое длиннее. Реплика на тридцатой секунде оказывается на минуте, а реплика ближе к концу двенадцатиминутного эпизода — около двадцати четырёх минут. Поскольку коэффициент целый, результат легко проверить глазами: первый субтитр должен появиться на удвоенном прежнем таймкоде, а последний — всё ещё внутри видео.

В начале субтитры верны, а к концу расходятся на полэпизода — это двойка?

Сверьте последний таймкод файла с длительностью видео. Пропорциональная ошибка, выросшая к концу до половины эпизода, — это либо эта пара, либо одна из остальных в группе, и различить их можно по размеру файла: коэффициент два делает последний таймкод примерно вдвое больше длины видео, а 0,96 или 1,0427 оставляют его в пределах нескольких процентов.

Реплика была секунду, стала две — так и должно быть?

Да, и это единственное направление в группе, где скорость чтения строки падает, а не растёт. Слова не изменились, а времени им дали вдвое больше, поэтому строка, которая раньше выходила за предел знаков в секунду, теперь может в него уложиться. Ничего не нужно пересчитывать заново только из-за этого: удвоение дорожки — исправление, а не компромисс.

Нужен ли этот пересчёт для чересстрочного 50i всегда?

Нет, и в этом ловушка пары. 50i описывает поля, а 50 полей в секунду — это 25 кадров в секунду: длительность видео в обоих случаях одна и та же. Вдвое делить нужно только файл, чей тайминг действительно считали по 50. Если субтитры уже верны относительно 50i-видео, пересчёт удвоит ошибку вместо того, чтобы её убрать.

Что если ошибка только в части файла — первая половина верна, вторая нет?

Тогда это вовсе не проблема частоты кадров. Файл, верный до некоторой точки и неверный после неё, склеен из двух кусков или рассчитан по версии, собранной из рулонов, идущих с разной скоростью, и никакой один коэффициент не исправит обе половины. Разделите файл в точке, где начинается ошибка, и пересчитайте каждую половину отдельно со своей парой частот.

Похожие инструменты