Công cụ chuyển đổi mã hóa phụ đề
Khi tệp phụ đề hiện dấu � hoặc chữ lộn xộn, thường là do tệp được lưu bằng một bảng mã cũ và trình phát của bạn đang đọc nó theo bảng mã khác. Công cụ này đọc tệp theo bảng mã bạn chọn và lưu thành UTF-8. Tệp vẫn nằm trong trình duyệt của bạn.
Sửa lỗi mã hóa tệp phụ đề của bạn
Tải lên tệp phụ đề (.srt, .vtt, .ass, .smi…) để sửa lỗi mã hóa.
Cách sử dụng
- Tải tệp phụ đề lên: .srt, .vtt, .ass, .ssa, .sbv, .sub, .smi hoặc .txt.
- Công cụ chọn sẵn một bảng mã ban đầu: UTF-8 nếu tệp là UTF-8 hợp lệ, nếu không thì chọn bảng mã cũ cho ra ít dấu � nhất. Lựa chọn này có thể sai.
- Đổi Bảng mã nguồn cho đến khi bản xem trước hiển thị đúng.
- Nhấn Tải xuống UTF-8. Bản sao giữ nguyên phần mở rộng và được thêm -utf8 vào tên, nên movie.srt thành movie-utf8.srt.
Công cụ làm gì với tệp
- Công cụ đọc được UTF-8, EUC-KR/CP949, Shift-JIS, GB2312/GBK/GB18030, Big5, Windows-1252/Latin-1 và Windows-1251.
- Bản lưu không có dấu thứ tự byte (BOM). Chỉ bảng mã thay đổi; định dạng phụ đề, thời gian và nội dung giữ nguyên.
Các bảng mã cũ theo ngôn ngữ
Trước khi UTF-8 trở nên phổ biến, tệp phụ đề được lưu bằng bảng mã riêng cho từng ngôn ngữ. Cột cuối cho thấy một từ mẫu trong tệp như vậy khi được đọc theo UTF-8.
| Ngôn ngữ | Bảng mã cũ | Đọc theo UTF-8 |
|---|---|---|
| Tiếng Hàn | EUC-KR / CP949 | 안녕하세요 → �ȳ��ϼ��� |
| Tiếng Nhật | Shift-JIS | こんにちは → ����ɂ��� |
| Tiếng Trung giản thể | GB2312 / GBK / GB18030 | 你好世界 → ������� |
| Tiếng Trung phồn thể | Big5 | 繁體中文 → �c�餤�� |
| Tây Âu | Windows-1252 / Latin-1 | café → caf� |
| Ký tự Kirin | Windows-1251 | Привет → ������ |
Vì sao chữ bị lỗi
Tệp phụ đề lưu các byte, và bảng mã quyết định mỗi byte ứng với ký tự nào. Một tệp tiếng Hàn lưu bằng EUC-KR khi mở theo UTF-8 sẽ hiện dấu �, vì các byte của nó không tạo thành UTF-8 hợp lệ.
Trường hợp ngược lại cũng có thể xảy ra. Một tệp UTF-8 mở bằng chương trình mặc định dùng Windows-1252 sẽ hiển thị café thành café. Tệp đó không có lỗi, và công cụ này sẽ báo đó là UTF-8; bạn cần cài đặt chương trình để đọc tệp theo UTF-8.
Câu hỏi
- Bản xem trước đọc được nhưng lại sai ngôn ngữ. Vì sao?
- Các bảng mã Đông Á dùng chung các dải byte, nên một tệp tiếng Hàn EUC-KR có thể được giải mã theo GB18030 hoặc Big5 thành những chữ Hán có thật nhưng vô nghĩa. Nếu bản xem trước hiển thị sai hệ chữ, hãy chuyển sang bảng mã của ngôn ngữ trong tệp.
- Sau khi chuyển đổi, trình phát của tôi vẫn hiển thị chữ lỗi.
- Một số trình phát và TV đời cũ chỉ coi tệp là UTF-8 khi tệp bắt đầu bằng dấu thứ tự byte (BOM), còn công cụ này lưu không có BOM. Hãy tìm thiết lập mã hóa phụ đề trong trình phát và đặt thành UTF-8.
- Công cụ có đổi định dạng phụ đề không?
- Không. Định dạng và phần mở rộng giữ nguyên, nên tệp .smi sẽ trả về là tệp .smi ở UTF-8. Để đổi định dạng sau đó, hãy dùng các công cụ chuyển đổi SRT, VTT, ASS hoặc SBV.
- Tôi có thể dán văn bản thay vì tải tệp lên không?
- Không. Văn bản dán vào đã được trình duyệt hoặc trình soạn thảo của bạn giải mã, nên các byte gốc không còn nữa. Hãy tải chính tệp đó lên.