Hai định dạng trông gần như giống hệt nhau
SRT và WebVTT mang cùng một loại thông tin: danh sách các cue, mỗi cue có thời điểm bắt đầu, thời điểm kết thúc và một hoặc nhiều dòng chữ. Khác biệt tuy nhỏ nhưng rất nghiêm ngặt, và trình phát sẽ từ chối tệp chỉ vì chúng.
SRT (SubRip) ra đời từ một công cụ rip đĩa trên Windows vào khoảng năm 2000 và trở thành chuẩn trên thực tế vì nó là văn bản thuần mà ai cũng sửa được. Mỗi cue bắt đầu bằng một số thứ tự, thời gian dùng dấu phẩy trước phần mili giây, và không có header:
100:01:02,500 --> 00:01:05,000Where were you last night?
WebVTT được thiết kế cho phần tử <track> của HTML5. Tệp phải bắt đầu bằng WEBVTT, thời gian dùng dấu chấm (00:01:02.500), số thứ tự cue là tùy chọn, và cue có thể mang thiết lập vị trí, căn lề và dòng, cùng các khối định kiểu. Trình duyệt chỉ nạp VTT trong phần tử <track>; đặt tệp SRT vào đó thì đơn giản là không hiện gì.
Nơi mỗi định dạng được sử dụng:
- SRT: trình phát trên máy tính, phần mềm dựng video, hầu hết biểu mẫu tải lên của các nền tảng video, đầu phát media trên TV đọc tệp từ USB.
- VTT: phụ đề trên website của riêng bạn, trình phát HTML5 và nhiều nền tảng khóa học trên web.
- Văn bản thuần: để đọc, trích dẫn hoặc chỉnh sửa lời thoại mà không cần thời gian.
Chuyển đổi giữ lại và bỏ đi những gì
Bạn dán phụ đề vào ô và kết quả cập nhật ngay khi bạn gõ. Bộ phân tích tách đầu vào thành các khối tại những dòng trống, tìm dòng có --> trong mỗi khối, đọc hai mốc thời gian và coi mọi thứ sau dòng đó là nội dung cue. Số thứ tự cue được dựng lại từ đầu cho SRT, nên tệp có số bị nhảy hoặc trùng sẽ ra được đánh số 1, 2, 3 theo thứ tự.
Một số chi tiết cụ thể:
- Ký tự xuống dòng kiểu Windows và dấu BOM ở đầu tệp đều được xử lý.
- Các khối không có dòng thời gian, như khối
NOTEvàSTYLEcủa VTT, bị bỏ qua. - Thiết lập cue của VTT viết sau thời điểm kết thúc (
align:start,position:10%) không được chuyển sang. - Mốc thời gian VTT không có phần giờ (
00:01.500) cũng đọc được. - Nội dung cue được sao chép nguyên trạng, kể cả ngắt dòng.
<i>,<b>và<u>dùng được ở cả hai định dạng nên được giữ lại; thẻ màu<font>của SRT bị xóa khi chuyển sang VTT, vì trình phát VTT sẽ hiển thị chúng như văn bản. - Đầu ra văn bản thuần đặt mỗi cue trên một dòng, nối các cue nhiều dòng bằng một dấu cách và xóa mọi thẻ.
Bộ đếm cạnh các tùy chọn cho biết bao nhiêu cue được nhận diện. Nếu con số thấp hơn bạn nghĩ, hãy xem những khối bị thiếu: lý do thường gặp là dòng thời gian bị sai định dạng.
Sửa phụ đề bị lệch thời gian
Ô Dịch thời gian dời mọi cue đi cùng một số giây, với bước nhỏ nhất là 0,1. Giá trị dương làm phụ đề xuất hiện muộn hơn; giá trị âm làm chúng xuất hiện sớm hơn. Những cue bị dời về trước mốc 0 sẽ được giữ ở 00:00:00.
Một cách đáng tin cậy để tìm độ lệch chính xác:
- Phát video và ghi lại thời điểm một câu thoại dễ nhận ra được nói, chẳng hạn 00:12:40.
- Tìm câu đó trong tệp phụ đề, chẳng hạn được đặt ở 00:12:43.
- Phụ đề chậm 3 giây, nên hãy nhập -3.
- Kiểm tra thêm một câu thoại gần cuối video.
Nếu độ lệch ở cuối khác với độ lệch ở đầu, vấn đề không phải là trễ mà là trôi dần. Điều này thường xảy ra khi phụ đề làm cho bản phát hành 23,976 fps được phát cùng bản 25 fps: khoảng cách tăng khoảng 4% qua suốt bộ phim, xấp xỉ 4 phút trên 100 phút. Dịch thời gian cố định không sửa được hiện tượng trôi; bạn cần phụ đề làm đúng cho phiên bản video đó.
Mẹo thực tế
- Để chuyển đổi một tệp, hãy mở nó bằng trình soạn thảo văn bản bất kỳ, chọn tất cả, sao chép rồi dán vào. Nút tải về lưu kết quả thành
subtitles.srt,subtitles.vtthoặcsubtitles.txt; hãy đổi tên cho khớp với tệp video nếu trình phát của bạn tự nạp phụ đề. - Để trình phát trên máy tự nhận phụ đề, tên tệp thường phải khớp nhau:
holiday.mp4vàholiday.srttrong cùng một thư mục. - Nếu chữ có dấu hay chữ Kirin bị lỗi hiển thị khi mở một tệp SRT cũ, tệp đó được lưu bằng bảng mã cũ. Hãy mở lại trong trình soạn thảo với đúng bảng mã trước khi sao chép, và lưu tệp đã chuyển đổi ở dạng UTF-8.
- Chưa có phụ đề? Hãy tạo từ âm thanh bằng Chuyển video sang văn bản, hoặc vẽ trực tiếp vào hình bằng Thêm phụ đề vào video.