SubtitleMedic

Chuyển đổi SRT sang VTT

Chuyển phụ đề SubRip thành WebVTT cho trình phát web, video HTML5 và khóa học trực tuyến.

Xử lý ngay trên trình duyệtKhông cần đăng ký.srt

Cách chuyển SRT sang VTT

  1. Mở file .srt

    Kéo một file SubRip vào ô phía trên, hoặc bấm để chọn file. File được đọc ngay trên trình duyệt và không bao giờ bị tải lên.

  2. Xem những gì thay đổi

    Nội dung file trước và sau được đặt cạnh nhau: dòng tiêu đề WEBVTT mới, dấu chấm trong mốc thời gian, số thứ tự câu bị bỏ và những thẻ WebVTT không giữ được.

  3. Tải file .vtt

    Lưu file đã chuyển. Tên file giữ nguyên, chỉ đổi đuôi: movie.srt thành movie.vtt.

Vì sao file SRT không dùng thay VTT được

SubRip (.srt) và WebVTT (.vtt) nhìn gần như giống nhau khi mở bằng trình soạn thảo: các khối chữ, mỗi khối có thời điểm bắt đầu và kết thúc. WebVTT vốn được thiết kế dựa trên SubRip. Khác biệt rất nhỏ, nhưng chỉ một điểm thôi cũng đủ để trình duyệt từ chối file.

Dòng tiêu đề. File WebVTT phải bắt đầu bằng chữ WEBVTT ở dòng đầu tiên. Trình duyệt kiểm tra dòng này trước khi đọc bất cứ thứ gì. SubRip không có tiêu đề, nên file .srt đổi đuôi thành .vtt vẫn không hiện phụ đề.

Dấu ngăn mili giây. SubRip ghi thời gian là 00:01:02,345, dùng dấu phẩy, một thói quen từ phần mềm Pháp nơi nó ra đời. WebVTT dùng dấu chấm: 00:01:02.345. Trình đọc nghiêm ngặt sẽ bỏ dòng thời gian sai dấu, và cả câu biến mất mà không có thông báo lỗi nào.

Số thứ tự câu. Mỗi khối trong file .srt bắt đầu bằng một con số. WebVTT không cần: dòng nằm trên dòng thời gian là tên tùy chọn của câu, dùng cho script và kiểu chữ. Công cụ bỏ các số này để file WebVTT gọn, thay vì có 800 câu mang tên từ “1” đến “800”.

Định dạng. Cả hai đều ghi chữ nghiêng, đậm và gạch chân bằng <i>, <b> và <u>, nên những thẻ này được giữ. Nhiều file .srt còn có thẻ <font color="…"> hoặc mã ASS như {\an8} để đưa câu lên đầu màn hình. Trình phát trên máy tính hiểu chúng; WebVTT thì không, và trình duyệt sẽ in nguyên chúng ra như chữ. Chúng bị bỏ, và số lượng được hiện phía trên nút tải file.

Khi nào cần WebVTT

Video HTML5. Thẻ <track> chỉ nhận WebVTT. Nếu bạn thêm phụ đề cho video trên trang web của mình thì đây là định dạng trình duyệt cần, và file phải nằm cùng origin với trang hoặc được trả về kèm header CORS phù hợp.

Trình phát web và nền tảng khóa học. Video.js, JW Player, Plyr và phần lớn nền tảng e-learning, webinar đều dựa trên cùng tính năng đó của trình duyệt nên cũng yêu cầu .vtt. Một số nhận .srt rồi tự chuyển; khi tải .srt lên mà không thấy phụ đề, chuyển sang .vtt trước thường giải quyết được.

Streaming bằng HLS. Track phụ đề trong luồng HLS là WebVTT được cắt đoạn. Các công cụ đóng gói nhận file phụ đề rời thường cần .vtt.

Với TV, máy chủ phim hay phần mềm dựng, hãy giữ file .srt. Smart TV, Plex, VLC và phần lớn phần mềm dựng đọc thẳng SubRip, một số còn không đọc được WebVTT. Nếu bạn nhận được file .vtt và cần chiều ngược lại, dùng Chuyển đổi VTT sang SRT.

Mẹo để chuyển đổi gọn gàng

Kiểm tra bảng mã trước. Nếu chữ có dấu hiện sai trong phần xem trước, ví dụ é thay cho é, file đã được đọc bằng sai bảng mã. Chọn bảng mã đúng cạnh tên file trước khi tải về. File .vtt luôn được lưu dạng UTF-8, đúng như WebVTT yêu cầu. Với file vẫn lỗi chữ, Sửa lỗi font phụ đề đặt các bảng mã có khả năng nhất cạnh nhau để bạn so sánh.

Ghi ngôn ngữ cho track. Trong HTML, khai báo ngôn ngữ để trình duyệt hiện đúng tên: <track kind="subtitles" src="movie.vtt" srclang="vi" label="Tiếng Việt">.

Phụ đề còn bị lệch? Chuyển đổi không bao giờ đổi thời gian. Nếu câu thoại hiện quá sớm hay quá muộn, hãy chỉnh bằng Chỉnh thời gian phụ đề trước hoặc sau khi chuyển.

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

Chuyển SRT sang VTT có làm lệch thời gian phụ đề không?

Không. Chỉ cách ghi mốc thời gian thay đổi, từ dấu phẩy trước phần mili giây thành dấu chấm. Mỗi câu giữ nguyên thời điểm bắt đầu và kết thúc, và phần xem trước đặt hai bản cạnh nhau để bạn kiểm tra.

Vì sao file .srt không chạy trong trình phát video HTML5?

Thẻ <track> chỉ đọc WebVTT. Trình duyệt tìm chữ WEBVTT ở dòng đầu và dấu chấm trong mốc thời gian, mà file SubRip không có cả hai, nên track được tải nhưng không hiện gì. Đổi đuôi thành .vtt là chưa đủ, file phải được chuyển đổi.

Chữ nghiêng, màu và vị trí thì sao?

Chữ nghiêng, đậm và gạch chân được giữ, vì WebVTT ghi chúng giống hệt. Thẻ font như <font color> và mã như {\an8} không có nghĩa với WebVTT nên bị bỏ. Công cụ đếm và báo số lượng trước khi bạn tải về.

Tôi có chuyển ngược file .vtt về .srt ở đây được không?

Trang này chỉ nhận file .srt. Chiều ngược lại dùng công cụ Chuyển đổi VTT sang SRT, cách làm giống hệt và cho biết những gì SubRip không giữ được.

File phụ đề có bị tải lên đâu không?

Không. File được đọc và chuyển đổi bằng JavaScript ngay trong thẻ trình duyệt này và không bao giờ rời khỏi thiết bị của bạn. Công cụ vẫn chạy nếu bạn mất mạng sau khi trang đã tải xong.