Chuyển đến nội dung chính
SubtitleMatrix

Đồng bộ lại phụ đề với âm thanh

Đầu vào mediaCăn lại theo âm thanh

Lần chạy đầu tiên tải bộ máy video — khoảng 31 MB, do trang này phục vụ và được trình duyệt lưu đệm sau đó. Nó chỉ được dùng để đọc track âm thanh; phụ đề được khớp với chính âm thanh, không dùng mô hình giọng nói và không tải lên gì.

Tùy chọn

Phụ đề có thể lệch khỏi vị trí đúng bao xa, theo cả hai hướng. Đây là thiết lập về chi phí và rủi ro hơn là độ chính xác: cửa sổ rộng hơn tìm được độ lệch lớn hơn nhưng cũng cho phép tìm kiếm nhiều cơ hội hơn để bám vào một sự trùng hợp tình cờ có điểm cao. Không có gì vượt quá khoảng một phút đến từ một lần cắt hay một logo — mức đó thường có nghĩa là một bản dựng phim khác, hoặc lệch frame rate, thứ mà trang này giải quyết riêng. Hãy chọn cửa sổ nhỏ nhất bao được phỏng đoán của bạn.

Trang này sửa những phụ đề đúng thứ tự nhưng sai thời điểm. Bạn đưa hai thứ — tệp phụ đề và video hay âm thanh mà nó thuộc về — và trang tính xem chữ đã trôi bao xa, rồi ghi lại tệp với mọi cue được dời. Trôi vài giây đến từ cắt cảnh và logo; trôi tăng dần suốt phim đến từ lệch frame rate, khi bản master 23,976 fps ghép với phụ đề canh cho 25 fps và sai số đã là một phút rưỡi khi hết giờ đầu.

Phép đo lấy từ chính âm thanh. Trang trích một track mono, gộp thành từng khung hai mươi mili giây độ lớn, và đánh dấu khung nào có lời nói. Rồi nó hỏi đi hỏi lại một câu: với độ dịch và độ đổi tốc độ này, bao nhiêu phần chữ phụ đề rơi vào lúc có tiếng nói thay vì khoảng lặng? Câu trả lời được cho điểm theo từng cue rồi lấy trung bình, và cặp thắng được áp dụng. Không có nhận dạng lời nói nào tham gia, nên nó chạy trong vài giây và chạy được cả khi phụ đề ở ngôn ngữ bạn không có mô hình.

Vì điểm số là phép đo chứ không phải bảo đảm, trang được dựng để không làm gì khi phép đo yếu. Năm cue trở xuống, track âm thanh không phát hiện được lời nói, điểm tốt nhất vẫn chủ yếu rơi vào khoảng lặng, hoặc hai cách canh rất khác nhau cho điểm gần bằng nhau — mỗi trường hợp kết thúc bằng một báo cáo và không có tệp phụ đề viết lại. Khi canh tốt bạn nhận hai tệp, vì chúng trả lời hai câu hỏi khác nhau: phụ đề đã sửa giữ định dạng ban đầu, tên film.synced.srt hoặc phần mở rộng tương ứng, sẵn sàng phát; và một báo cáo văn bản nhỏ ghi độ dịch bằng mili giây, tỉ lệ đã áp dụng, điểm, độ tin cậy, cùng một dòng nói tệp có được đụng tới hay không. Toàn bộ chạy cục bộ: âm thanh được giải mã bằng ffmpeg biên dịch sang WebAssembly, tải một lần từ site này; phụ đề được phân tích trong tab, và không gì được gửi đi.

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

Độ dịch đo được khác gì độ lệch cố định tôi gõ ở trang dịch thời gian?

Trang dịch thời gian áp một con số bạn đã biết, nên nó vẫn đúng dù âm thanh có đồng ý hay không. Trang này bắt đầu từ phía ngược lại: nó giả định bạn không biết con số, đọc hoạt động lời nói từ âm thanh, rồi giải đồng thời độ dịch và độ đổi tốc độ. Đó cũng là lý do nó sửa được lỗi frame rate, thứ không một độ lệch đơn nào diễn tả nổi — ở 25 so với 23,976, sai số bằng 0 lúc đầu và tăng khoảng 3,6 giây mỗi giờ, nên một độ dịch sửa phần đầu sẽ làm phần cuối tệ hơn.

Vì sao đôi khi trang từ chối ghi tệp phụ đề mới?

Vì một bản sửa sai khó phát hiện hơn một bản sửa thiếu. Phép tìm báo bốn thứ: nó có bao nhiêu cue để làm việc, âm thanh có lời nói hay không, bao nhiêu phần thời gian phụ đề rơi vào lúc có tiếng, và mức thắng của phương án tốt nhất so với phương án khác thật sự khác biệt tốt nhất. Nếu bất kỳ thứ nào yếu, lượt chạy chỉ tạo báo cáo, với dòng trạng thái not-found kèm lý do. Bạn không mất gì — tệp gốc không bị đụng — và bạn có một con số để kiểm trước khi làm tay.

Tỉ lệ trong báo cáo nghĩa là gì với cặp 23,976 và 25 fps?

Thời gian cue được nhân với tỉ lệ rồi dời theo độ lệch, nên tỉ lệ 1,0427 nghĩa là phụ đề được canh cho nền khung nhanh hơn và mọi cue phải giãn ra muộn hơn. Trang thử cả hai chiều của mỗi cặp thông dụng, vì chiều nào đọc được tùy tệp bạn đang cầm: 1,0427 và 0,9590 là cùng một chỗ lệch nhìn từ hai đầu. Nếu tỉ lệ báo là 1,000000 và độ lệch dưới một khung, tệp đã khớp sẵn và được để nguyên.

Tệp đã sửa có giữ kiểu hiển thị hay chỉ giữ thời gian?

Thời gian đổi và không gì khác đổi. Phụ đề được phân tích vào cùng biểu diễn nội bộ mọi trang khác trên site dùng, mốc bắt đầu và kết thúc của từng cue được viết lại, rồi được tuần tự hóa về đúng định dạng nó đến. Kiểu ASS, vị trí và thẻ nội tuyến sống sót; cấu trúc riêng của tệp cũng vậy, nên .ass vào cho .ass ra thay vì một .srt bị làm phẳng. Ngoại lệ nhìn thấy được là một cue bị tỉ lệ lớn ép xuống dưới một mili giây, được giữ ở một mili giây và đếm trong danh sách mất mát.

Trang có chạy khi phụ đề ở ngôn ngữ khác với âm thanh không?

Có, và đó chính là lý do đo độ lớn thay vì nhận dạng từ. Hoạt động lời nói là một hình dạng — một câu là một đợt năng lượng rồi một khoảng trống — và hình dạng đó giống nhau dù giọng nói tiếng Đức hay tiếng Tây Ban Nha. Một bản lồng tiếng Đức dưới phụ đề Tây Ban Nha canh khớp tốt như một cặp cùng ngôn ngữ. Thứ nó không làm được là phân biệt dòng lồng tiếng với dòng gốc, nên nếu bản lồng chèn thêm thoại, phép canh vẫn tìm được khớp tổng thể nhưng từng cue trong các đoạn chèn có thể nằm sai dòng.

Công cụ liên quan