Удалить подписи говорящих
Или вставьте текст субтитров
Параметры
Одно поле, пять вариантов, и у каждого своя страница. Скобки удаляют парные [квадратные] вставки, круглые — парные (круглые), говорящий — имя заглавными и двоеточие после него в начале строки, музыка — нотные символы. Все четыре сразу — вариант «Все пометки». Каждый из них правит сами слова, а не оформление, поэтому строка становится короче, и, в отличие от страниц оформления, удалённую пометку нельзя вернуть инструментом, который прочтёт результат. Эта страница заполняет поле вариантом, названным в её заголовке, и других не предлагает.
В какой частоте кадров считается тайминг. На страницах форматов это то, что нужно MicroDVD: он хранит время в номерах кадров. На страницах частоты кадров это частота, по которой файл был рассчитан, — версия, для которой делались субтитры, — а второе поле страницы принимает частоту видео, с которым вы будете их использовать. Обычные значения: 23,976, 24, 25, 29,97, 30, 50, 59,94 и 60. Ошибка сдвигает весь таймлайн, а на страницах частоты кадров — на коэффициент, а не на фиксированную величину.
Страница удаляет метку говорящего в начале строки: имя заглавными буквами, двоеточие после него и пробел за двоеточием. «ИВАН: Я это слышал.» превращается в «Я это слышал.», а «— МАРИЯ: Я тоже.» — в «Я тоже.». Больше в субтитре ничего не меняется: ни таймкоды, ни нумерация, ни слова. Метка распознаётся по форме, а не по списку имён: заглавные буквы без строчных в начале строки, завершённые двоеточием. «He said: hello» не подходит, потому что после заглавной идут строчные, а «I:» не подходит, потому что одной заглавной буквы недостаточно. В WebVTT метка вида «<v Bob>» — это не метка говорящего, а разметка, и её убирает другая страница.
Примеры
Имя без тире и имя после тире
Вход
1
00:00:01,000 --> 00:00:03,000
BOB: I heard that.
2
00:00:04,000 --> 00:00:06,000
- JANE DOE: So did I.
Выход
1
00:00:01,000 --> 00:00:03,000
I heard that.
2
00:00:04,000 --> 00:00:06,000
So did I.
Две формы, которые метка принимает в реальном файле: имя само по себе и имя после тире, отмечающего смену говорящего. Удаляются обе, а вместе с ними двоеточие и пробел после него — так строка не начинается с лишнего пробела. Остаётся диалог в том виде, в каком его прочитал бы слышащий зритель.
Двоеточия в репликах, которые остаются
Вход
1
00:00:01,000 --> 00:00:03,000
He said: hello
2
00:00:04,000 --> 00:00:06,000
I: am not a label
Выход
1
00:00:01,000 --> 00:00:03,000
He said: hello
2
00:00:04,000 --> 00:00:06,000
I: am not a label
Оба субтитра возвращаются байт в байт. В первом двоеточие идёт после строчного слова, поэтому оно внутри предложения, а не перед ним. Во втором перед двоеточием одна заглавная буква, а одной буквы недостаточно, чтобы считать это именем: страница, принявшая её за метку, удаляла бы местоимение, которое встречается в любом сценарии.
Метка в столбце Dialogue файла ASS
Вход
[Script Info]
Title: speaker
[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, Bold, Italic
Style: Default,Arial,20,&H00FFFFFF,0,0
[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:01.00,0:00:02.00,Default,,0,0,0,,BOB: I heard that.
Выход
[Script Info]
Title: speaker
[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, Bold, Italic
Style: Default,Arial,20,&H00FFFFFF,0,0
[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:01.00,0:00:02.00,Default,,0,0,0,,I heard that.
В ASS текст стоит в последнем из десяти столбцов строки Dialogue, и метка находится внутри этого столбца. Всё вокруг сохраняется: заголовок скрипта, таблица стилей, раскладка столбцов и тайминг события. Это та же правка, что и в примере с SRT, только через другой формат файла.
Частые вопросы
Как страница определяет метку говорящего?
По форме: последовательность заглавных букв, цифр, пробелов и знаков без строчных букв в начале строки, заканчивающаяся двоеточием. Под это подходят «ИВАН:», «МАРИЯ ПЕТРОВА:», «О'БРАЙЕН:» и «ИВАН (З.К.):», а «He said:» и «I:» — нет. Правило записано как отсутствие строчных букв, поэтому работает и с именами, которых инструмент раньше не видел.
Удалится ли двоеточие, которое относится к реплике?
Нет. «He said: hello» сохраняет двоеточие: после заглавной буквы идут строчные, и последовательность не выглядит как имя. Ради этого различия и требуется условие о заглавных буквах: двоеточия в диалоге встречаются часто, и страница, которая брала бы любое короткое слово перед двоеточием, удаляла бы их непредсказуемо.
Что происходит с тире перед меткой говорящего?
Оно удаляется вместе с меткой. Строка «— МАРИЯ: Я тоже.» превращается в «Я тоже.» без ведущего тире, потому что тире и имя — одна разметка: именно эта пара отмечает смену говорящего в SDH-дорожке. Тире в начале строки без имени после него остаётся, потому что метки, с которой его можно связать, нет.
Меняются ли таймкоды файла при удалении меток говорящего?
Нет. Правится только текст внутри субтитров, поэтому каждое начало и конец остаются такими, какими их записал файл, а нумерация принадлежит файлу. Диапазоны жирного и курсива, стоявшие на самой метке, удаляются и попадают в потери: текста, который они покрывали, больше нет. Диапазоны на реплике после метки сдвигаются и сохраняются.
Зачем вообще удалять метки говорящего?
Потому что SDH-дорожка и обычные субтитры — разные продукты. Метка нужна, чтобы зритель, который не слышит голоса, понимал, кто говорит; когда файл используют как обычные субтитры, имена в начале каждой второй строки только мешают. Некоторые вещатели прямо запрещают такие метки, поэтому их удаление бывает требованием сдачи, а не пожеланием.
Из каких форматов можно удалить метки говорящего?
Из всех двенадцати, которые читает сайт: SRT, WebVTT, ASS, SSA, SBV, SAMI, LRC, MicroDVD, TTML, JSON, обычного текста и CSV. В ASS метка стоит в последнем столбце строки Dialogue, в WebVTT — в тексте реплики; тег «<v Bob>» при этом остаётся, его убирает страница удаления HTML-разметки.