Tôi đang làm việc trên một trang web cần truyền phát video trực tiếp tới người dùng và như vậy tôi đã phải suy nghĩ về tình trạng đáng tiếc của công nghệ truyền phát video dựa trên trình duyệt hiện tại. Các giải pháp phổ biến nhất để phát trực tiếp hiện nay đều có vấn đề tương thích; RTMP đòi hỏi Flash, HLS chỉ natively hỗ trợ trên Safari và Chrome dành cho Android, DASH không natively hỗ trợ bất cứ nơi nào, và sử dụng dash.js đòi hỏi truyền thông Nguồn Extensions , mà chưa được hỗ trợ rộng rãi.
Điều này dẫn đến một câu hỏi mà đối với tôi có vẻ hiển nhiên: có thể sử dụng tải xuống lũy tiến đơn giản như một giải pháp thay thế cho các giao thức như HLS, RTMP và DASH yêu cầu hỗ trợ trình duyệt hoặc plugin không?
Ý tưởng sử dụng tải xuống lũy tiến để truyền phát trực tiếp phương tiện truyền thông không phải là chưa từng có; mọi người đã làm nó cho âm thanh. Các công cụ như liveCaster cho phép bạn truyền phát âm thanh MP3 trực tiếp thông qua một phản hồi HTTP lũy tiến duy nhất mà không cần tệp MP3 được ghi sẵn và các thư viện như AmplitudeJS đã hết cách để thêm các tính năng liên quan đến loại phát trực tiếp âm thanh này .
Mặc dù vậy, tôi chưa thấy bất kỳ trường hợp nào của kỹ thuật này được sử dụng trong tự nhiên cho video và tôi không thể biết tại sao. Có vẻ như nó sẽ loại bỏ một lớp các vấn đề tương thích phía trình duyệt lộn xộn và khó khăn cho sự đánh đổi tương đối ít. (Và khả năng tương thích vẫn là một vấn đề lớn đối với phát trực tiếp, ngay cả khi những người chuyên nghiệp làm điều đó; nếu tôi cố xem video trực tiếp trên iPlayer của BBC trên Firefox, nó chỉ cho tôi một thông báo lỗi cho tôi biết để cài đặt Flash.) kỹ thuật này, và tôi chưa bao giờ thấy ai thậm chí đề cập đến ý tưởng ngoài tôi.
Tại sao? Có một giới hạn cơ bản mà tôi không thấy sẽ khiến cho việc truyền phát tệp video như MP4 qua tải xuống liên tục khi nó được tạo và phát trong <video>
phần tử khi tải xuống không thể thực hiện được?