Chuyển timecode drop-frame sang non-drop
Hoặc dán văn bản phụ đề
Tùy chọn
30 fps non-drop và 29.97 drop-frame ghi cùng một đồng hồ theo cách khác nhau, và ô này chọn chiều đọc tệp và chiều ghi lại. Một cue ở mốc một giờ đọc là 01:00:00,000 theo kiểu này và 01:00:03,600 theo kiểu kia — hai kiểu cách nhau 3.6 giây mỗi giờ, không phải sai số làm tròn. Tiêu đề trang nêu một chiều, và ô này chỉ đưa ra chiều đó, nên tệp bạn nhận được đúng là tệp mà trang nói về. Không có gì về văn bản thay đổi: không cue nào được chỉnh lại thời gian theo video, không frame rate nào được chuyển đổi, và một cue nằm trong phút đầu của một giờ sẽ trở về đúng như khi đưa vào, vì không có nhãn khung hình nào bị bỏ ở đó.
Các mốc thời gian được tính theo frame rate nào. Trên các trang định dạng, đây là thông số MicroDVD cần, vì định dạng này lưu thời gian dưới dạng số khung hình. Trên các trang frame rate, đây là tốc độ mà tệp được tính theo — phiên bản mà phụ đề được làm cho — và ô thứ hai của trang nhận tốc độ của video mà bạn sẽ dùng phụ đề cùng. 23.976, 24, 25, 29.97, 30, 50, 59.94 và 60 là những giá trị thường gặp. Điền sai sẽ làm lệch toàn bộ dòng thời gian, và trên các trang frame rate, nó làm lệch theo một tỉ lệ chứ không phải một lượng cố định.
Trang này đổi nhãn mọi timecode trong một tệp phụ đề từ 29.97 fps drop-frame về 30 fps non-drop, nên mỗi đồng hồ lùi đi một khoản cố định lớn dần theo chương trình: không gì trong phút đầu của một giờ, 3.6 giây sau một giờ, 36 giây sau mười giờ. Chữ, số thứ tự cue, thứ tự cue và chỗ xuống dòng là của tệp và ra nguyên vẹn.
Tệp cần trang này được đóng dấu theo một màn hình hay một đầu máy đang đếm bằng drop-frame — chuyện thường gặp trên tư liệu 29.97, vì drop-frame là quy ước bám theo đồng hồ thực — trong khi mọi thứ phía sau đọc đồng hồ theo non-drop. Đọc theo cách đó, mọi timecode trong tệp đều lớn hơn thời điểm nó gọi tên một khoản ngày càng tăng, nên phụ đề hiện sớm, và càng về sau càng sớm hơn. Nửa giờ vào sai số là 1.8 giây, và nó không ngừng tăng ở bất kỳ chỗ nào trong tệp — nên cách sửa không phải một cú dịch nhỏ mà là cùng một phép đổi nhãn áp ở mọi mốc, với độ lớn của phần sửa do vị trí của cue quyết định.
Đọc một đồng hồ thành timecode nghĩa là bắt nó về vạch khung 30 fps gần nhất, và trong drop-frame có hai vạch không tồn tại: quy ước bỏ nhãn ;00 và ;01 ở đầu mỗi phút, trừ mỗi phút thứ mười, nên một đầu vào 00:01:00,000 gọi tên một thời điểm mà quy ước ấy không có cách nào viết ra — nó bị kéo về nhãn cuối cùng viết được, 00:00:59,933, sớm hơn 67 mili giây, và trên hai giờ có 216 giá trị như vậy. Một cue ngắn hơn một khung sau phép bắt về vạch không viết được và bị bỏ, số lượng hiện trong báo cáo mất mát phía trên. Không gì được tải lên: tệp được đọc và ghi lại ngay trong tab trình duyệt, và cả mùa đi qua hàng đợi trong một lượt — SRT, WebVTT, ASS, SSA, SBV, SAMI, MicroDVD, TTML, JSON cùng CSV đều đọc được.
Ví dụ
Một tệp ở mốc năm phút
Đầu vào
1
00:05:00,000 --> 00:05:02,000
The room is dark.
2
00:10:00,000 --> 00:10:03,000
A cold night.
Kết quả
1
00:04:59,667 --> 00:05:01,667
The room is dark.
2
00:09:59,400 --> 00:10:02,400
A cold night.
Phần sửa không phải một con số áp cho cả tệp: ở mốc năm phút đồng hồ lùi 333 ms và ở mốc mười phút lùi 600 ms, vì drop-frame đã bỏ mười nhãn trước cue đầu và mười tám nhãn trước cue thứ hai. Mỗi cue giữ nguyên độ dài tới từng mili giây, vì cả hai mép của nó lùi cùng một lượng — đây là phép đổi nhãn, không phải phép dịch.
Cùng phép sửa ở mốc một giờ
Đầu vào
1
01:00:03,600 --> 01:00:06,600
An hour into the programme.
Kết quả
1
01:00:00,000 --> 01:00:03,000
An hour into the programme.
Một giờ vào, 01:00:03,600 của drop-frame chính là 01:00:00,000 của non-drop — 108 nhãn bị bỏ, 3600 ms. Đây là con số để kiểm trang: dòng đầu của đầu ra phải sớm hơn dòng đầu của đầu vào đúng 3600 ms, và một tệp ra từ đầu máy drop-frame phải rơi đúng vào mốc giờ tròn.
Một cue trong phút đầu
Đầu vào
1
00:00:04,000 --> 00:00:06,000
Still early in the file.
2
00:05:00,000 --> 00:05:02,000
This one does move.
Kết quả
1
00:00:04,000 --> 00:00:06,000
Still early in the file.
2
00:04:59,667 --> 00:05:01,667
This one does move.
Trong phút đầu của một giờ không nhãn nào bị bỏ, nên hai quy ước viết sáu mươi giây ấy giống hệt nhau và cue đầu được để nguyên. Cue thứ hai, ở mốc năm phút, thì dịch. Một cue đứng yên cạnh một cue đã dịch là kết quả đúng cho tệp này, không phải một lượt chạy dừng giữa đường — phần sửa bằng không ở đầu một giờ và lớn dần từ mốc phút đầu tiên trở đi.
Câu hỏi thường gặp
Vì sao khi đổi drop-frame sang non-drop, phụ đề lại ra sớm hơn thay vì muộn hơn?
Vì đồng hồ trong tệp lớn hơn thời điểm mà chúng gọi tên. Non-drop đếm 30 nhãn mỗi giây như thể 29.97 fps giao đủ 30 khung, nên nó chậm dần so với thời gian thực; drop-frame bỏ hai nhãn mỗi phút để bám theo. Đọc một đồng hồ từ đầu máy drop-frame rồi hiểu nó là non-drop thì nó trỏ vượt chỗ đáng ra, và phép sửa trừ đi phần vượt ấy: 333 ms ở mốc năm phút, 3600 ms ở mốc một giờ, 36000 ms ở mốc mười giờ.
Timecode drop-frame nào không viết được, và nó bị kéo về đâu?
Mỗi phút bị bỏ nhãn trong drop-frame thiếu hai nhãn ;00 và ;01, nên 00:01:00,000 và 00:01:00,010 không phải những đồng hồ mà quy ước có thể hiển thị: chúng rơi về 00:00:59,933, sớm hơn 67 mili giây. Đây là chỗ duy nhất trên trang mà đầu ra không phải một phép đổi nhãn chính xác, và nó có biên rõ ràng — hai nhãn mỗi phút bị bỏ, 216 giá trị trên hai giờ.
Cue nào có thể biến mất khỏi tệp sau khi đổi sang non-drop?
Chỉ cue ngắn hơn một khung, tức 33.37 ms. Hai trường hợp đẩy một cue về cùng một vạch: phép bắt về vạch ở trên, nơi một cue mười mili giây như 00:01:00,000 đến 00:01:00,010 có cả hai mép bị kéo về 00:00:59,933, và một cue vốn đã ngắn hơn một khung khi đến. Cue mà đầu và cuối trùng một thời điểm thì không viết ra được, nên nó bị bỏ và số lượng hiện trong báo cáo mất mát phía trên khu làm việc.
Ngoài các con số đồng hồ, đổi drop-frame sang non-drop có sửa gì khác trong tệp không?
Không. Số thứ tự cue, thứ tự của chúng, chữ của mọi dòng, chỗ xuống dòng cứng trong một cue và tổng số cue là của tệp và được giữ nguyên. Tệp cũng không ghi ở đâu đó rằng đồng hồ giờ là non-drop, vì không định dạng nào đọc ở đây — SRT, WebVTT, ASS, SSA, SBV, SAMI, MicroDVD, TTML, JSON, CSV — có trường chứa được điều đó, và tệp bạn thả vào cũng không nói.
Ô frame rate cần điền gì cho phép đổi drop-frame sang non-drop này?
Bất kỳ tốc độ nào mà tư liệu thật sự có; nó không ảnh hưởng phép chuyển này. 30 và 29.97 trong tên trang là hai quy ước đếm được viết trên chuỗi timecode, không phải tốc độ khung của video, nên không gì ở đây được nhân với con số bạn điền. Ô này chỉ bắt buộc vì MicroDVD lưu thời gian bằng số khung thay vì bằng đồng hồ, và đọc một tệp MicroDVD là không thể nếu không biết frame rate của nó.
Chạy trang ngược lại trên kết quả có trả lại nguyên tệp không?
Có, từng byte, miễn là không timecode nào rơi vào lớp mà drop-frame không viết được. Hai trang là cùng một phép tính đọc theo hai chiều: trang này trừ đi một khoản lớn dần, trang kia cộng lại, và độ lớn do vị trí của từng cue quyết định chứ không phải một độ lệch cố định. Ngoại lệ là trường hợp bắt về vạch — 00:01:00,000 ra thành 00:00:59,933 rồi quay về 00:00:59,933 — và đó là lớp mốc duy nhất mà cặp này không phải một vòng tròn hoàn hảo.