BookTranslator
BookTranslator

Cách dịch tệp SRT mà không thay đổi dấu thời gian

Dịch văn bản phụ đề trong khi khóa số thứ tự cue và timecode, rồi xác thực trình tự, mã hóa và phát lại trước khi bàn giao.

BookTranslator

BookTranslator Team

10 min read

Câu trả lời nhanh: Dịch văn bản cue, khóa ID và timecode

Tệp SRT là một tệp dữ liệu có căn thời gian, không phải bản chép lời có dấu thời gian chỉ để trang trí. Chỉ dịch phần văn bản phụ đề. Giữ nguyên mọi số cue, dấu thời gian, dòng trống phân tách và thẻ định dạng được hỗ trợ, rồi so sánh cấu trúc cue của bản gốc và bản dịch trước khi xem video.

Để có quy trình xử lý theo tệp, hãy tải tệp gốc lên SRT Translator thay vì sao chép phụ đề vào một ô văn bản không có cấu trúc. Việc nhận biết theo tệp làm giảm rủi ro cấu trúc, nhưng bạn vẫn nên xác thực đầu ra với bản gốc và video.

Quy tắc ít ai để ý là thế này: giữ nguyên timecode là điều cần thiết, nhưng chưa đủ. Một cue đích có thể giữ đúng dấu thời gian y hệt mà vẫn hỏng vì câu dịch quá dài để đọc, ngắt ở sai cụm từ, hoặc nhắc đến một người nói còn chưa xuất hiện.

Cấu trúc của tệp SRT

Một cue điển hình gồm bốn phần:

17
00:00:41,500 --> 00:00:44,200
<i>MAYA:</i> The total is €1,249.50.

  1. 17 là số cue.
  2. 00:00:41,500 là thời điểm bắt đầu.
  3. 00:00:44,200 là thời điểm kết thúc.
  4. Dòng hoặc các dòng còn lại là văn bản hiển thị.

SRT thường dùng dấu phẩy giữa giây và mili giây, và --> giữa thời điểm bắt đầu và kết thúc. Một dòng trống ngăn cách cue này với cue kế tiếp. Một số trình phát chấp nhận biến thể; một quy trình dịch đáng tin cậy không nên phụ thuộc vào sự dễ dãi đó.

Tải xuống bài kiểm tra độ bền dịch SRT tổng hợp. Nó bao gồm hội thoại, chữ nghiêng, nhãn người nói, ngày tháng, tiền tệ, văn bản CJK, tiếng Ả Rập, chữ Kirin và ký tự Latin có dấu. Nội dung là hư cấu, nên an toàn để dùng cho kiểm tra bộ phân tích và mã hóa.

Vì sao dịch bằng sao chép-dán làm hỏng tệp SRT

Các quy trình văn bản dùng chung có thể nhầm cấu trúc là nội dung. Các lỗi phổ biến gồm:

  • dịch hoặc đánh lại số ID cue;
  • thay đổi ký tự phân tách dấu thời gian hoặc dấu phẩy thập phân;
  • gộp hai cue ngắn thành một đoạn văn;
  • làm rơi một cue lặp lại hoặc có vẻ trống;
  • trả về các hàng rào Markdown bao quanh tệp;
  • viết lại nhãn người nói thành văn xuôi;
  • xóa các thẻ <i> hoặc xuất ra đánh dấu rich-text không được hỗ trợ;
  • thay các dòng trống phân tách cue bằng các dòng được xuống hàng tự động.

Ngay cả một bản dịch tốt về mặt ngôn ngữ cũng vô dụng khi trình phát không còn phân tích được nữa.

Quy trình dịch từng bước

1. Giữ nguyên bản gốc

Giữ tệp SRT nguồn không thay đổi. Làm việc trên một bản sao có nhãn ngôn ngữ như interview.en.srtinterview.es.srt.

2. Xác nhận tệp nguồn phân tích được

Mở tệp nguồn trong trình biên tập phụ đề hoặc trình phát trước khi dịch. Nếu bản nguồn đã có timecode chồng lấn, thiếu dòng phân tách, hoặc lệch so với video, hãy sửa hoặc ghi nhận các lỗi đó trước.

3. Phát hiện mã hóa

Dùng UTF-8 cho đầu ra đa ngôn ngữ trừ khi đặc tả bàn giao yêu cầu rõ ràng một lựa chọn khác. Hướng dẫn bản chép lời của YouTube nói rằng tệp transcript không phải tiếng Anh nên được mã hóa UTF-8, đây là mốc chuẩn hợp lý cho tệp phụ đề quốc tế (YouTube Help).

4. Đóng băng các trường cấu trúc

Hãy coi số cue và các dòng dấu thời gian là nội dung được bảo vệ. Nếu công cụ không thể khóa chúng, hãy dịch theo từng lô nhỏ và xác thực sau mỗi lô.

5. Dịch các cue hoàn chỉnh cùng ngữ cảnh lân cận

Dịch phần văn bản hiển thị, nhưng cung cấp cue trước và cue sau để có ngữ cảnh. Phụ đề thường tách một câu thành nhiều cue; dịch tách biệt có thể làm thì, đại từ hoặc trật tự từ thay đổi thiếu nhất quán.

6. Phân đoạn lại cho ngôn ngữ đích

Giữ nguyên thời lượng cue trừ khi bạn được phép căn lại thời gian, nhưng hãy điều chỉnh chỗ ngắt dòng đích bên trong cue. Ngắt ở ranh giới cụm từ tự nhiên, không ngắt sau mạo từ, giới từ, tên riêng hoặc các cụm động từ gắn chặt với nhau.

7. Chạy xác thực cấu trúc

So sánh số lượng cue, ID, dấu thời gian, thứ tự, thẻ và các dòng trống phân tách giữa bản nguồn và bản đích. Làm việc này trước khi rà soát ngôn ngữ để người duyệt không lãng phí thời gian vào một tệp còn không tải được.

8. Xem toàn bộ track đích

Kiểm tra tự động không thể cho biết liệu một phụ đề có xuất hiện trước khi người nói cất tiếng, che mất văn bản quan trọng trên màn hình, hay vẫn đủ dễ đọc trong một đoạn đối đáp nhanh hay không.

Giữ ngắt dòng, chữ nghiêng và nhãn người nói

Đừng máy móc giữ nguyên ngắt dòng nguồn khi cú pháp của bản đích thay đổi. Hãy giữ nguyên cue, rồi chọn cách ngắt dòng dễ đọc trong ngôn ngữ đích.

Ví dụ, cách ngắt ở bản nguồn này là tệ:

We approved the proposal
after the final review.

Nếu ngôn ngữ đích đặt điều kiện lên trước, chỗ ngắt tự nhiên có thể phải đổi chỗ. Mục tiêu đúng là nhóm nghĩa theo ngữ nghĩa, không phải khớp từng pixel xuống dòng của bản gốc.

Chỉ giữ chữ nghiêng có ý nghĩa khi đích đến hỗ trợ chúng và sổ tay phong cách yêu cầu như vậy. Giữ nhãn người nói một cách nhất quán. YouTube khuyến nghị các cue như [music] cho âm thanh và >> để nhận diện người nói trong quy trình transcript (YouTube Help); các bên nhận khác có thể yêu cầu quy ước khác.

Xác thực số lượng cue và thứ tự dấu thời gian

Hãy dùng bảng bất biến này:

Kiểm traKết quả mong đợiChặn bàn giao?
Số lượng cueSố lượng ở bản nguồn và bản đích khớp nhauCó, trừ khi việc căn lại thời gian đã được phê duyệt làm thay đổi số lượng
ID cueCùng các ID duy nhất theo đúng thứ tự
Văn bản dấu thời gianKhớp từng byte khi thời gian đã bị khóa
Bắt đầu trước kết thúcMọi cue đều có thời lượng dương
Thứ tự trình tựKhông có bước lùi ngược ngoài ý muốn
ThẻCân bằng và được hỗ trợThường là có
Văn bản hiển thịMọi cue nguồn đều có một cue đích có chủ đích

Đừng dùng kích thước tệp làm chỉ dấu thay thế. Bản dịch nở dài làm bản đích lớn hơn; số byte tương tự không chứng minh được gì.

Đối chiếu phụ đề với video

Rà soát ở tốc độ phát bình thường và bao gồm các thời điểm khó sau:

  • đoạn hội thoại nhanh nhất;
  • hai người nói thay phiên nhanh;
  • tên riêng, ngày tháng, tiền tệ và đơn vị đo;
  • hội thoại băng qua một cú cắt cảnh;
  • văn bản cạnh tranh với biển hiệu hoặc lower third;
  • bài hát, hiệu ứng âm thanh và giọng nói ngoài khung hình;
  • cue đầu tiên và cue cuối cùng;
  • ít nhất một đoạn chứa từng thẻ định dạng được hỗ trợ.

Dùng danh sách kiểm tra QA dịch phụ đề để đánh giá độ dễ đọc và cách phân đoạn sau khi đã xác thực cấu trúc.

Lỗi SRT thường gặp và cách sửa

Triệu chứngNguyên nhân có khả năng caoCách sửa
Trình phát từ chối tệpCú pháp dấu thời gian hoặc dòng phân tách cue bị hỏngSo sánh cue lỗi đầu tiên với bản nguồn
Phụ đề bị trôi dù timecode khớpNhầm track nguồn hoặc video đã bị chỉnh sửaCăn tệp nguồn theo đúng phiên bản video chính xác
Văn bản hiện thành ô vuông hoặc ký tự lỗiMã hóa hoặc hỗ trợ phông chữLưu dưới dạng UTF-8 và kiểm tra môi trường phát lại
Một câu hiện dưới sai người nóiGộp cue hoặc dịch thiếu ngữ cảnhKhôi phục ranh giới cue và rà soát các cue lân cận
Cue hai dòng biến thành những khối chữ dày đặcBản dịch bị nở dàiRút gọn, diễn đạt lại hoặc xin phép căn lại thời gian
Chữ nghiêng vẫn mở sang các cue sauThẻ không cân bằngXác thực thẻ theo từng cue và đóng chúng cục bộ

Khi nào không nên giữ mọi dấu thời gian

Đừng hứa giữ nguyên dấu thời gian khi thời gian ở bản nguồn bị lỗi, ngôn ngữ dịch cần cách phân đoạn khác biệt đáng kể, hoặc chính video đã được biên tập lại. Trong các trường hợp đó, hãy giữ bản nguồn làm tham chiếu kiểm toán và tạo một track đích đã được căn lại thời gian một cách minh bạch.

Khóa dấu thời gian là một ràng buộc dịch thuật, không phải thứ thay thế cho nghiệp vụ biên soạn phụ đề.

Câu hỏi thường gặp

Tôi có thể chỉ dịch phần văn bản trong tệp SRT không?

Có. Hãy dịch các dòng văn bản trong khi bảo vệ số cue, dấu thời gian và các dòng phân tách. Sau đó xác thực rằng mọi cue nguồn vẫn còn đúng một cue đích có chủ đích.

Phụ đề đã dịch có nên có cùng số lượng cue không?

Nếu thời gian bị khóa, có. Số lượng khác đi là tín hiệu rất mạnh cho thấy các cue đã bị gộp, bị mất hoặc bị tách. Một quy trình căn lại thời gian chuyên nghiệp có thể cố ý thay đổi số lượng, nhưng điều đó cần được ghi lại.

Tôi có thể thay đổi ngắt dòng mà không đổi dấu thời gian không?

Có. Ngắt dòng là một phần của văn bản hiển thị, không phải thời lượng cue. Hãy chuyển chúng tới các ranh giới cụm từ tự nhiên trong ngôn ngữ đích.

Tôi nên dùng mã hóa nào cho tệp SRT đã dịch?

UTF-8 là mặc định an toàn nhất cho văn bản đa ngôn ngữ. Chỉ dùng mã hóa cũ khi một hệ thống bàn giao được ghi nhận rõ ràng yêu cầu như vậy.

Vì sao tệp SRT đã dịch của tôi vẫn tải được nhưng trông sai?

Phân tích cú pháp và trải nghiệm xem là hai bài kiểm tra khác nhau. Tệp có thể hợp lệ về cấu trúc trong khi các cue của nó quá dài, phân đoạn kém, lệch thời gian so với phiên bản video, hoặc không được hỗ trợ bởi bộ phông của trình phát.

Bài viết liên quan