3.9 HTTP Live Streaming 3.9.1 HLS là gì?
HTTP Live Streaming (HLS) là một giao thức truyền các luồng đa phương tiện dựa trên nền tảng HTTP được triển khai bởi công ty Apple như là một phần của hệ thống phần mềm iPhone và QuicktimeX của họ. Nó hoạt động bằng cách phá vỡ các luồng tổng thể thành một chuỗi các quá trình download tập tin nhỏ hơn dựa trên nền tảng HTTP. Mỗi quá trình sẽ tải về một đoạn ngắn của luồng tổng thể gần như vô tận này. Khi luồng stream được phát đi, các máy khách (client) có thể chọn từ những luồng stream khác nhau chứa đựng cùng một nguồn dữ liệu nhưng được mã hóa thành các dạng dữ liệu khác nhau tùy theo tốc độ dữ liệu truyền tải có sẵn của các máy khách (Xem sơ đồ 3.7 trang 66 minh họa cách thức hoạt động của HLS1).
Với HTTP Live Streaming, bạn có thể stream đồng thời cả hai phương thức là nội dung trực tiếp (thời gian thực) hoặc nội dung đã được chuẩn bị từ trước (nội dung ghi). HLS hỗ trợ nhiều luồng thay thế ở các bit rate khác nhau và những phần mềm máy khách có thể thông minh tùy chỉnh sau cho phù hợp với sự thay đổi bandwidth của đường truyền mạng. HLS cũng cung cấp việc mã hóa thông tin và xác thực người dùng thông qua HTTPS, điều này cho phép các nhà sản xuất bảo vệ sản phẩm của họ.
3.9.2 Chất lượng và sự nhanh chóng
Người ta thường chỉ trích chất lượng của media khi stream, họ thường so sánh với chất lượng video của một file phát bình thường trên một chương trình desktop hay một chương trình TV. Thật ra, việc stream media không phải chủ yếu là chất lượng sản phầm ra sao mà là khả năng truy xuất của nó. Thử tưởng tượng rằng chỉ việc đơn giản là click vào một đường link trong email của bạn, bạn có thể thấy được một đoạn clip dài khoảng chừng 30 phút ghi lại hình ảnh đứa cháu yêu của mình dù cách nhau nửa vòng trái đất, bạn sẽ cảm thấy khác. Việc chi click vào một đường link và thấy ngay được hình ảnh tức thì sẽ cho bạn thấy được sức mạnh của công nghệ stream.
Chất lượng của việc stream media là tùy biến được. Nếu người xem có một đường truyền Internet với bandwidth cao, bạn có thể mã hóa video và audio với chất lượng cao hơn. Ngược lại, nếu người xem chỉ có một đường truyền trung bình, bạn cần phải mã hóa media ở mức thấp hơn. Do đó, trong mọi trường hợp, người dùng đều có thể xem được mượt mà media truyền tải mà họ không cần quan tâm nhiều đến chất lượng ra sao.