HLS so với DASH: Giao thức phát trực tuyến thực sự hoạt động như thế nào
Trước khi có phát trực tuyến, xem video trên mạng nghĩa là phải tải toàn bộ tệp xuống rồi mới phát. Một video 500 MB phải được tải hết về thiết bị, ngay cả khi bạn chỉ muốn xem 30 giây đầu. Giao thức phát trực tuyến giải quyết vấn đề này bằng cách chia video thành các phần nhỏ: bạn có thể xem ngay trong khi những phần còn lại vẫn đang được tải xuống.
Phân đoạn: Nền tảng của phát trực tuyến
Lấy HLS (HTTP Live Streaming, do Apple tạo), giao thức phổ biến nhất: máy chủ cắt toàn bộ video thành nhiều tệp nhỏ, được gọi là phân đoạn, thường dài 2-10 giây và được đóng gói dưới dạng MPEG-TS hoặc fMP4. Nó cũng tạo một tệp danh sách phát (.m3u8) ghi lại thứ tự và địa chỉ của các phân đoạn. Trình phát tìm nạp danh sách phát trước, sau đó tải xuống các phân đoạn theo yêu cầu - hoàn thành một phân đoạn, tìm nạp phân đoạn tiếp theo mà hầu như không phải chờ đợi.
Tốc độ bit thích ứng: Tại sao quá trình phát lại không bị dừng trên mạng yếu
Cả HLS và DASH (Dynamic Adaptive Streaming over HTTP, được Microsoft và các hãng khác hỗ trợ) đều chuẩn bị nhiều bộ phân đoạn cho cùng một video với độ phân giải và tốc độ bit khác nhau, chẳng hạn 1080p, 720p và 480p. Các phiên bản được liệt kê trong danh sách phát chính. Trình phát theo dõi tốc độ tải xuống và mức bộ đệm theo thời gian thực: tăng tốc độ bit khi mạng tốt, giảm khi mạng yếu để video không bị ngắt. Đây là phát trực tuyến với tốc độ bit thích ứng (ABR), cũng là lý do video tự giảm độ nét khi bạn đi tàu điện ngầm.
Tại sao tải xuống liên kết m3u8 thường thất bại
Nếu tải trực tiếp URL .m3u8, bạn chỉ nhận được vài KB văn bản của danh sách phát, chứ không phải video. Để lưu video, công cụ phải phân tích danh sách phát, tải từng phân đoạn rồi ghép lại theo đúng thứ tự. Vì vậy, nhiều trình tải xuống không hỗ trợ HLS hoặc cần bước ghép phân đoạn riêng. TakeVid có sẵn tính năng phát hiện phân đoạn và tự động ghép, để tệp tải xuống hoàn chỉnh và sẵn sàng phát.
- HLS: từ Apple, sử dụng danh sách phát .m3u8, được iOS/Safari hỗ trợ nguyên bản, xử lý cả trực tiếp và theo yêu cầu
- DASH: một tiêu chuẩn mở với các tệp kê khai .mpd, được YouTube, Netflix và các dịch vụ khác sử dụng ở quy mô lớn
- Cả hai đều chạy trên HTTP đơn giản, thân thiện với CDN và thống trị hoạt động phát trực tuyến hiện nay