자막 구조 문제 일괄 검사
또는 자막 텍스트를 붙여넣으세요
옵션
한 자막 블록이 끝나고 다음이 시작할 때 허용되는 빈 화면의 밀리초입니다. 빈 구간은 바로 앞 자막 블록이 아니라 지금까지 화면에 남아 있던 가장 늦은 끝에서부터 잽니다. 그래서 짧은 자막 블록 여러 개 아래에 깔린 긴 자막 블록이 화면에 없던 빈 구간을 만들어 내지 않습니다. 이 숫자가 하는 일은 페이지에 따라 다릅니다. 빈 구간 닫기 페이지에서는 이보다 넓은 구간을 닫고(0이 보통 값이며 두 자막이 정확히 맞닿는다는 뜻입니다), 검사 페이지에서는 이보다 넓은 구간을 모두 나열하고 파일은 건드리지 않습니다. 어느 쪽이든 이 값 이하는 그대로 둡니다.
표시 시간입니다. 1000, 1s, 1.5s, 00:00:01,000 모두 됩니다. 읽을 만큼 충분히 머무는 자막과 스쳐 지나가는 자막을 가르는 선입니다. 이 선을 벗어났을 때 무슨 일이 일어나는지는 페이지에 따라 다릅니다. 빈 구간 채우기 페이지는 짧은 자막을 더 오래 화면에 두고, 늘어난 시간을 뒤따르는 빈 구간에서 빼내 다음 자막의 말을 가리지 않게 합니다(파일의 마지막 자막 블록은 뒤가 없으므로 그냥 늘어납니다). 검사 페이지는 이 선 아래의 자막 블록을 모두 나열하고 파일은 그대로 둡니다.
상자 하나에 선택지 둘, 그리고 각각 자기 페이지가 있습니다. 텍스트가 전혀 없는 자막 블록은 시간축은 차지하면서 아무것도 보여 주지 않는 자막입니다. 그게 맞는 경우는 없으므로 보고서는 이것을 오류로 표시합니다. 글자가 없는 자막 블록은 무언가는 담았지만 단어는 없는 줄입니다. 노래 대신 들어간 음표, 숫자만 있는 줄, 대시 세 개 같은 것입니다. 방송용 자막은 이런 것을 의도적으로 쓰므로 보고서는 결함이 아니라 확인이 필요하다고 표시하고, 측정 열에는 실제로 들어 있는 글자를 보여 줍니다.
타이밍을 어떤 프레임 레이트 기준으로 세는지 정합니다. 형식 안내 페이지에서는 MicroDVD가 이 값을 필요로 합니다. 시간을 프레임 번호로 저장하기 때문입니다. 프레임 레이트 페이지에서는 이 파일이 어느 프레임 레이트를 기준으로 만들어졌는지, 즉 자막을 만든 판본의 값을 뜻하며, 페이지의 두 번째 상자에는 이 자막을 사용할 영상의 프레임 레이트를 넣습니다. 흔히 쓰는 값은 23.976, 24, 25, 29.97, 30, 50, 59.94, 60입니다. 잘못 넣으면 시간축 전체가 어긋나고, 프레임 레이트 페이지에서는 고정된 양이 아니라 비율로 어긋납니다.
파일에 무엇이 잘못됐는지 아직 모를 때 먼저 돌려 볼 페이지입니다. 자막 파일 하나를 여섯 가지 구조 검사에 한 번에 통과시킵니다. 겹치는 블록, 빈 구간, 빈 블록, 단어 없는 블록, 시작 시각이 거꾸로 가는 블록, 직접 정한 한도를 벗어난 표시 시간입니다. 결과는 검사별 절이 하나씩 있는 보고서 하나입니다. 모든 절은 찾은 것이 있든 없든 인쇄됩니다. 문제만 나열하는 보고서는 깨끗하게 돌아온 검사와 아예 실행되지 않은 검사를 구분할 수 없게 만들기 때문입니다.
검사마다 자기 어휘를 유지합니다. 겹침은 공유 밀리초, 빈 구간은 비어 있는 밀리초, 표시 시간은 직접 정한 두 한도와 비교합니다. 순서 관련 두 검사는 문서 수준 검출로 보고됩니다. 정렬하거나 복구해야 했던 블록은 파일에 위치를 가리킬 흔적을 남기지 않기 때문입니다. 절별 개수를 더해 파일의 문제 수가 되지는 않으며, 그럴 의도도 없습니다. 한 블록이 짧고 비어 있으면서 겹칠 수 있고, 각각은 그것을 설명할 줄 아는 검사가 보고합니다. 보고서가 주는 것은 문제의 총합이 아니라 파일 문제의 모양입니다.
머리말도 답의 일부입니다. 파일 이름, 읽은 형식, 블록 수, 실행한 검사 수, 읽는 동안 복구한 내용을 담습니다. 적힌 그대로 담을 수 없던 타임코드나 파일이 버티기 위해 옮겨야 했던 블록이 여기에 해당합니다. 그런 복구가 있기 때문에 재정렬이나 0길이 표시 시간이 블록 번호 없이 검출 절에 나타납니다. 증거는 파일 속 블록이 아니라 복구 횟수입니다. 이 스캔이 드러낸 항목은 그 뒤에 개별 페이지에서 다시 보세요. 각 페이지가 결함 하나를 자세히 설명하고 그에 맞는 복구를 제안합니다.
예시
여러 종류의 문제가 있는 파일
자막
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에 대해 만든 1ms가 표시 시간 절에서 1초 최소값과 비교된 숫자로 돌아옵니다. 같은 결함을 한 보고서에서 두 방향으로 설명한 셈입니다.
자주 묻는 질문
이 페이지는 자막 파일에 어떤 검사를 실행하나요?
여섯 가지입니다. 겹치는 블록, 빈 구간 한도보다 긴 블록 사이 쉼, 빈 블록, 단어가 없는 블록, 시작 시각이 거꾸로 가는 블록, 설정한 최소·최대를 벗어난 표시 시간입니다. 각각 보고서에 자기 절이 있고 항상 같은 순서로 인쇄되며, 찾은 것이 없어도 모든 절이 나타납니다.
깨끗한 검사도 왜 보고서에 절이 있나요?
찾은 것 없음과 검사하지 않음은 다른 답이고, 문제만 나열하는 보고서는 둘을 구분할 수 없게 만들기 때문입니다. 절이 여섯 개면 검사도 여섯 번 실행된 것입니다. 빈 절은 그 검사가 살펴보았고 아무것도 찾지 못했다는 뜻이며, 정보의 부재가 아니라 신뢰할 수 있는 결과입니다.
절별 개수를 더하면 파일의 문제 수가 되나요?
아니요, 그렇게 되도록 만들지 않았습니다. 한 블록이 짧고 비어 있으면서 겹칠 수 있고, 각각은 그것을 설명할 수 있는 규칙이 보고합니다. 그래서 같은 블록이 세 절에 나타날 수 있습니다. 더하지 말고 절을 따라 내려가며 각각을 별개의 답으로 읽으세요.
스캔 전에 어떤 한도를 정해야 하나요?
두 가지입니다. 허용하는 가장 넓은 쉼인 빈 구간 한도와, 블록이 화면에 머물 수 있는 가장 짧은 시간인 최소 표시 시간입니다. 최대 표시 시간은 필수가 아니며 기본값이 7초입니다. 세 값 모두 검출 옆에 인쇄되므로 보고서가 무엇과 비교했는지 기억할 필요가 없습니다.
어떤 검출에는 왜 블록 번호나 타임코드가 없나요?
문서 수준 검출이기 때문입니다. 블록 순서 문제와 복구된 0길이 타임코드는 모두 파일을 읽는 동안 만들어집니다. 검사할 수 있는 시점에는 블록이 이미 정렬되거나 고쳐져 있으므로 복구 횟수가 증거이고, 파일에 정직하게 잘못됐다고 부를 위치가 남지 않습니다.
개별 검사 대신 이 페이지를 써야 하나요?
무엇이 잘못됐는지 알아낼 때 이 페이지를 쓰고, 조치할 때는 개별 페이지로 가세요. 각 페이지가 결함 하나를 충분히 설명하고 자기 한도를 정하며 그 문제를 고치는 작업으로 연결합니다. 스캔은 진입점이고 뒤의 여섯 페이지를 대신하지 않습니다.
어떤 자막 형식을 스캔할 수 있나요?
시작과 끝 시각을 모두 저장하는 열 가지입니다: SRT, WebVTT, ASS, SSA, SBV, SMI, MicroDVD, TTML, JSON, CSV. LRC와 일반 텍스트는 받지 않습니다. 여섯 검사 중 넷이 끝 시각을 필요로 하고 나머지 둘은 블록 모델을 필요로 하므로, 그 형식을 스캔하면 빈 절만 돌아와 깨끗한 진단서처럼 읽힐 수 있습니다.
한 시리즈 분량을 한 번에 스캔할 수 있나요?
네. 원하는 만큼 파일을 대기열에 넣으면 차례로 스캔하고 각각 보고서를 만들며, 보고서들은 하나의 zip으로 함께 내려옵니다. 파일별 진행률이 표시되고 중간에 멈출 수 있으며, 어느 시점에도 파일이 브라우저를 떠나지 않습니다.