Перевірити субтитри на структуру
Або вставте текст субтитрів
Параметри
Скільки мілісекунд порожнього екрана дозволено між кінцем однієї репліки й початком наступної. Порожнеча міряється від найдальшого досягнутого кінця, а не від репліки безпосередньо перед нею, тож довга репліка під кількома короткими не вигадує проміжку, якого на екрані не було. Що робить число, залежить від сторінки: закриття проміжків закриває все ширше за нього (0 — звичайне значення, репліки зустрічаються точно), а сторінка перевірки перелічує кожен ширший відрізок і не чіпає файл. Усе на цьому числі або менше лишається як є в обох випадках.
Тривалість — 1000, 1s, 1.5s і 00:00:01,000 працюють. Це межа між субтитром, що лишається достатньо довго, щоб його прочитали, і тим, що миготить. Що стається по той бік межі, залежить від сторінки: закриття проміжків тримає коротку репліку на екрані довше, забираючи доданий час із наступного проміжку, щоб жодна репліка не накрила слова наступної (остання репліка у файлі не має нічого після себе й просто подовжується), а сторінка перевірки перелічує кожну репліку під межею й не чіпає файл.
Одне поле, два вибори, і кожен має власну сторінку. Репліка без тексту взагалі — це субтитр, що займає таймлайн, нічого не показуючи: немає прочитання файлу, де це правильно, тож звіт позначає її як помилку. Репліка без літер — це рядок, що містить щось, але не слова: нотні знаки замість пісні, саме число, три риски. Телевізійні субтитри використовують їх навмисно, тож звіт позначає їх для огляду, а не як дефект, а виміряна колонка показує символи, які там насправді є.
У якій частоті кадрів пораховано таймінги. На сторінках форматів це те, що потрібно MicroDVD, бо він зберігає час як номери кадрів. На сторінках частоти кадрів це частота, за якою файл синхронізували — версія, для якої робили субтитри, — а друге поле сторінки приймає частоту відео, з яким ви будете їх використовувати. 23,976, 24, 25, 29,97, 30, 50, 59,94 і 60 — найпоширеніші. Помилка зміщує весь таймлайн, а на сторінках частоти кадрів — на відношення, а не на фіксовану величину.
Це сторінка для випадку, коли ви ще не знаєте, що саме не так із файлом. Вона проводить файл субтитрів через шість структурних перевірок за один прохід — перекриття, паузи, порожні репліки, репліки без літер, невпорядковані початки й тривалості поза вашими лімітами — і повертає один звіт із розділом на кожну перевірку. Кожен розділ друкується незалежно від того, чи щось знайшлося, і в цьому суть: звіт, що перелічує лише проблеми, не дав би відрізнити перевірку, яка повернулася чистою, від перевірки, яка не виконувалася.
Кожна перевірка зберігає власний словник. Перекриття вимірюють у спільних мілісекундах, паузи — у порожніх мілісекундах, тривалості — проти двох заданих лімітів, а дві перевірки порядку звітують на рівні документа, бо репліка, яку довелося відсортувати або виправити, не лишає у файлі позиції, на яку можна вказати. Підрахунки не додаються до кількості того, що не так із файлом, і не мають: одна репліка може бути одночасно короткою, порожньою й перекритою, і кожну з цих вад описує перевірка, яка знає, як її назвати. Звіт дає форму проблем файлу, а не підсумок.
Заголовок — частина відповіді. Він називає файл, формат, у якому його прочитано, кількість реплік, кількість виконаних перевірок і все, що читачеві довелося виправити дорогою: таймкод, який не вдалося втримати як записано, або репліки, які довелося перемістити, щоб файл склався. Ці виправлення — причина, чому перестановка або нульова тривалість з’являються у розділі висновків без номера репліки: доказ — кількість виправлень, а не репліка у файлі. Після сканування запускайте конкретні сторінки для знайденого, бо кожна з них докладно пояснює одну ваду й пропонує відповідне виправлення.
Приклади
Чотири репліки з кількома вадами
Субтитри
1
00:00:01,000 --> 00:00:03,000
Where were you?
2
00:00:03,500 --> 00:00:04,000
3
00:00:04,500 --> 00:00:09,000
I was working late.
4
00:00:09,300 --> 00:00:12,000
Until when?
Що знаходить звіт
Checks run 6
Cues 4
Overlapping cues — 1 found
Gaps between cues — 2 found
Cue duration outside the limit — 1 found
Cues with no words — 1 found
Cues out of sequence — Nothing found
Cues ending before they start — Nothing found
Чотири репліки, чотири вади й два порожні розділи з шести. Порожній розділ про порядок — це результат, а не прогалина у звіті: саме так видно, що файл перевірили на цю ваду й він її пройшов. Порожня репліка й коротка репліка — та сама репліка, порахована двічі двома правилами, що описують її по-різному.
Чистий файл: шість порожніх розділів
Субтитри
1
00:00:01,000 --> 00:00:03,000
Where were you?
2
00:00:03,000 --> 00:00:05,000
I was working late.
Що знаходить звіт
Checks run 6
Cues 2
Overlapping cues — Nothing found
Gaps between cues — Nothing found
Cue duration outside the limit — Nothing found
Cues with no words — Nothing found
Cues out of sequence — Nothing found
Cues ending before they start — Nothing found
Шість перевірок, шість порожніх розділів. Це відповідь, яку сторінка має давати найчастіше, і єдиний спосіб побачити, що «нічого не знайдено» друкується для кожної перевірки, а не один раз на файл: один підсумковий рядок не дав би зрозуміти, які п’ять перевірок пропущено.
Три репліки, одне виправлення
Субтитри
1
00:00:09,000 --> 00:00:11,000
I was working late.
2
00:00:01,000 --> 00:00:02,000
Where were you?
3
00:00:05,000 --> 00:00:05,000
Until when?
Що знаходить звіт
Lost while reading Timing × 1, Cue order × 2
Cues out of sequence — 1 found
Cues ending before they start — 1 found
Gaps between cues — 1 found
Cue duration outside the limit — 1 found
Три репліки й три проблеми, одну з яких читачеві довелося виправити, перш ніж щось перевіряти. Заголовок фіксує обидва виправлення, а одна мілісекунда, вигадана для репліки 3, повертається в розділі тривалості як число, виміряне проти мінімуму одна секунда, — та сама вада, описана з двох боків в одному звіті.
Часті запитання
Які перевірки виконує ця сторінка?
Шість структурних перевірок за один прохід: перекриття реплік, паузи між ними, порожні репліки, репліки без літер, невпорядковані початки й тривалості поза заданими мінімумом і максимумом. Кожна перевірка має власний розділ у звіті, навіть якщо нічого не знайшла.
Чому чиста перевірка все одно отримує розділ у звіті?
Бо інакше читач не міг би відрізнити перевірку, яка повернулася чистою, від перевірки, яка не виконувалася. Порожній розділ — це результат, а не пропуск: він каже, що файл перевірили саме на цю ваду й нічого не знайшли. Один підсумковий рядок на весь файл цього не показав би.
Чи додаються підрахунки розділів до кількості проблем у файлі?
Ні, і не повинні. Одна репліка може бути одночасно короткою, порожньою й перекритою, і кожна перевірка опише її по-своєму. Сума рядків — це кількість висновків, а не кількість унікальних місць у файлі; звіт дає форму проблем, а не загальний бал.
Які ліміти треба задати перед скануванням?
Мінімум і максимум тривалості репліки в мілісекундах. Решта перевірок не має числових порогів: перекриття й паузи вимірюються як проміжки, а порядок і наявність літер — як факти. Якщо ліміти не задані, використовуються типові значення, і звіт друкує фактично застосовані.
Чому деякі висновки без номера репліки або таймкоду?
Бо доказом є виправлення, зроблене під час читання, а не репліка, яку можна знайти у файлі. Репліки могли пересортувати або виправити нульову тривалість, і після цього чесної позиції для вказівки не лишається. Заголовок показує кількість таких виправлень.
Чи варто користуватися цією сторінкою замість окремих перевірок?
Для першого огляду — так: вона показує, які родини вад у файлі взагалі є. Для виправлення — ні: кожна окрема сторінка пояснює одну ваду докладніше й показує саме ті числа, які потрібні для рішення. Скан дає карту, а не інструкцію.
Які формати субтитрів можна сканувати?
Десять форматів, що зберігають і початок, і кінець: SRT, WebVTT, ASS, SSA, SBV, SAMI, MicroDVD, TTML, JSON і CSV. LRC і звичайний текст не приймаються, бо перевірки пауз, перекриттів і тривалості потребують часу кінця.
Чи можна сканувати цілий серіал за один запуск?
Так. Черга приймає багато файлів і обробляє їх послідовно, а звіти можна завантажити разом. Кожен файл отримує власний звіт із шістьма розділами, тому результати серій не змішуються.