HLS trong quá trình di chuyển trình phát Shaka

Tổng quan

SDK Bộ thu web Cast hỗ trợ phát nội dung bằng một số giao thức truyền trực tuyến trên web. Dựa trên giao thức được sử dụng, SDK sẽ tải một trình phát để xử lý việc phát nội dung. Trong trường hợp nội dung HLS, Thư viện trình phát nội dung đa phương tiện (MPL) sẽ được tải. Trong trường hợp nội dung DASH, Shaka Player sẽ được tải.

Từ giờ trở đi, các nhóm kỹ sư của Cast SDK và Shaka Player sẽ tập trung nỗ lực để tăng cường hỗ trợ việc phát nội dung HLS trên Shaka Player. MPL sẽ không còn nhận được bản cập nhật quan trọng nữa. Bạn nên chọn sử dụng Shaka Player để phát nội dung HLS của ứng dụng.

Lợi ích của Shaka Player

Khi thay đổi trình phát, ứng dụng sẽ tận dụng các lợi ích sau:

  • Các phiên phát trực tuyến mạnh mẽ hơn cho người dùng, với các điểm cải tiến về thời gian tải và độ trễ.
  • Tiếp tục sử dụng các tính năng HLS mới nhất.
  • Tăng độ rõ ràng trong phân tích nguyên nhân gốc đối với các vấn đề về khả năng tương thích giữa trình phát và nội dung do bản chất nguồn mở của Shaka Player.
  • Cơ sở mã trình phát nguồn mở cho phép các đối tác đóng góp vào Dự án trình phát Shaka.
  • Giảm đáng kể thời gian phát hành tính năng và sửa lỗitốc độ phát hành của Shaka Player diễn ra thường xuyên và độc lập với các bản phát hành của SDK Trình thu phát trên web.
  • Kiểm soát tốt hơn môi trường phát do API shakaVersion cung cấp.
  • Tăng cường hỗ trợ phát của Google với các tài nguyên kỹ thuật tập trung vào việc phát HLS trên Shaka Player như trong lộ trình.

Dòng thời gian

SDK Bộ thu web sẽ chuyển sang sử dụng Shaka Player làm trình phát mặc định để phát nội dung HLS. Việc này sẽ được thực hiện theo từng giai đoạn để hướng dẫn các đối tác trong quá trình di chuyển.

Pha ban đầu Ngày bắt đầu Tổng quan
1 Ngày 22 tháng 10 SDK Bộ thu web Cast giới thiệu các API để chọn sử dụng nhằm phát nội dung HLS trên Shaka Player.
2 Nửa đầu năm 2025 Cast Web Receiver SDK thay đổi trình phát mặc định thành Shaka Player để phát nội dung HLS.

Các nhóm kỹ sư SDK Trình thu phát trên web đang áp dụng phương pháp tập trung vào hiệu suất và sẽ chỉ chuyển sang giai đoạn tiếp theo khi hiệu suất của Shaka Player ngang bằng với hiệu suất cơ sở của MPL. Những thay đổi này sẽ được thông báo trong nhóm google cast-sdk-announcements và được cập nhật trong hướng dẫn này.

Chọn nhận

Kể từ phiên bản CAF 3.0.0105, có một cấu hình cấp ứng dụng để chọn sử dụng trình phát Shaka cho chế độ phát HLS. Phiên bản này cũng giới thiệu một API để chọn trong phạm vi các phiên bản Shaka Player được hỗ trợ để tải. Các cờ này được cung cấp trong lớp CastReceiverOptions thông qua các thuộc tính useShakaForHlsshakaVersion và được đánh giá khi khởi động CastReceiverContext. Mọi ứng dụng chọn sử dụng Shaka cho HLS phải đặt phiên bản Shaka Player ít nhất là 4.3.4 để tận dụng các điểm cải tiến mới nhất về HLS. Để chọn sử dụng, hãy làm theo đoạn mã dưới đây:

const context = cast.framework.CastReceiverContext.getInstance();

let castReceiverOptions = new cast.framework.CastReceiverOptions();
castReceiverOptions.useShakaForHls = true;

context.start(castReceiverOptions);

Xác thực nội dung

Các đối tác nên xác thực việc phát nội dung trên Shaka Player trước khi chọn sử dụng Shaka Player trong ứng dụng chính thức. Bạn nên kiểm thử từng biến thể nội dung được liệt kê dưới đây:

  • Loại nội dung phát trực tuyến: TRỰC TIẾP hoặc VOD
  • Định dạng vùng chứa: TS, MP4 hoặc luồng cơ bản
  • Nội dung bị gián đoạn hoặc có quảng cáo được nhúng
  • Phát trên các loại thiết bị sau: màn hình thông minh, thiết bị Chromecast, thiết bị Android TV, TV có tích hợp Chromecast, loa thông minh

Nếu bạn phát hiện lỗi hoặc hành vi không mong muốn, hãy gửi lỗi. Sau khi bạn xác minh rằng nội dung của mình không gặp phải lỗi phát nghiêm trọng, hãy đẩy các thay đổi đó vào môi trường phát hành công khai.

Chọn không tham gia

SDK Bộ thu web sẽ chuyển sang mô hình chọn không sử dụng để phát nội dung HLS của Shaka Player theo tiến trình. Thuộc tính useShakaForHls sẽ thay đổi giá trị mặc định từ false thành true. Tại thời điểm đó, các ứng dụng có thể chọn sử dụng MPL để phát HLS bằng cách đặt thuộc tính này thành false theo cách thủ công. Khi CastReceiverContext khởi động, SDK Bộ thu web sẽ quay lại tải MPL thay vì Shaka Player. Hãy xem mẫu bên dưới để biết cách chọn không sử dụng:

const context = cast.framework.CastReceiverContext.getInstance();

let castReceiverOptions = new cast.framework.CastReceiverOptions();
castReceiverOptions.useShakaForHls = false;

context.start(castReceiverOptions);

Báo cáo sự cố

Các đối tác nên gửi mọi vấn đề phát hiện được khi phát nội dung HLS. Như đã đề cập, MPL sẽ không còn nhận được các bản cập nhật quan trọng nữa. Nếu bạn gặp bất kỳ vấn đề nào với MPL, hãy làm theo các bước trong phần Chọn sử dụng của hướng dẫn để xác minh xem việc chuyển sang Shaka Player có giúp giải quyết vấn đề của bạn hay không. Hãy làm theo các bước dưới đây nếu vấn đề vẫn xảy ra hoặc nếu bạn gặp một vấn đề khác khi chuyển đổi người chơi.

  1. Hãy thử đặt shakaVersion thành một phiên bản nhánh khác để giải quyết vấn đề. Ví dụ: nếu gặp vấn đề trên nhánh 4.3, hãy thử đặt nhánh đó thành bản phát hành mới nhất trong phiên bản 4.2.x hoặc 3.3.x. Hãy xem ghi chú phát hành của Shaka Player để tìm các bản phát hành có nội dung cập nhật phù hợp nhất. Xin lưu ý rằng API shakaVersion có phiên bản tối thiểu và tối đa được hỗ trợ như được nêu chi tiết trong tài liệu tham khảo. Nếu bạn nhận thấy có sự hồi quy, hãy báo cáo vấn đề trong công cụ theo dõi lỗi của Shaka Player.
  2. Thử thay đổi các thông số cấu hình trình phát. Bạn có thể định cấu hình Shaka Player thông qua đối tượng PlayerConfiguration. SDK Trình thu sóng web xác định một tập hợp các giá trị mặc định và cho phép các ứng dụng sửa đổi cấu hình này thông qua thuộc tính shakaConfig trong đối tượng PlaybackConfig. Giá trị này được đánh giá trong thời gian tải khi tạo thực thể trình phát. Xem thêm trong

    cấu hình và tuỳ chọn của ứng dụng. Giá trị mặc định do SDK Trình thu web đặt là các giá trị được đề xuất.

  3. Xem vấn đề đã được báo cáo trong công cụ theo dõi lỗi của Shaka Player hay công cụ theo dõi lỗi của Cast hay chưa. Nhận xét về lỗi và thêm mọi thông tin liên quan nếu lỗi đó cũng mô tả vấn đề của bạn.

  4. Kiểm thử nội dung của bạn trên trang web minh hoạ của Shaka Player. Nếu bạn phát hiện vấn đề tái diễn trong trang web minh hoạ cho nội dung của mình, hãy gửi lỗi cho dự án Shaka Player.

  5. Gửi lỗi trong Công cụ theo dõi lỗi của tính năng Truyền nếu bạn gặp vấn đề riêng với Trình phát Shaka trên các điểm cuối truyền.

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

Việc thay đổi người chơi có thể làm dấy lên nhiều câu hỏi. Dưới đây là câu trả lời cho các câu hỏi thường gặp nhất để giúp bạn thực hiện quy trình di chuyển.

Tôi có nên chuyển sang Shaka Player không?

Các đối tác sử dụng nội dung HLS nên bắt đầu quá trình di chuyển càng sớm càng tốt. Nhờ đó, ứng dụng của bạn sẽ mang đến trải nghiệm phát trực tuyến mạnh mẽ hơn cho người dùng. Bạn có thể xem thêm các lợi ích khác trong phần Lợi ích của Shaka Player của hướng dẫn này. Đối tác nên xác minh rằng ứng dụng của họ đang hoạt động đúng cách bằng cách sử dụng Shaka Player để đảm bảo quá trình chuyển đổi diễn ra suôn sẻ. Một số ứng dụng có thể gặp rủi ro khi SDK Trình thu sóng web chuyển đổi sang mô hình chọn không tham gia nếu các đối tác không xác minh trước rằng nội dung của họ phát đúng cách trên Shaka Player.

Mức độ nỗ lực dự kiến khi thay đổi người chơi là bao nhiêu?

Các đối tác sẽ cần kiểm thử ứng dụng và nội dung của họ trong môi trường thử nghiệm để đảm bảo trải nghiệm người dùng tương tự hoặc được cải thiện so với HLS. Để làm việc này, đối tác cần chọn sử dụng tính năng này trong môi trường nội bộ và kiểm thử kỹ lưỡng để đảm bảo nội dung của họ có thể phát bằng Shaka Player. Hãy xem bài viết xác thực nội dung để biết thông tin chi tiết về những khía cạnh nội dung mà bạn cần tập trung vào. Sau khi xác thực, đối tác sẽ cần thêm cờ để chọn sử dụng trong môi trường ứng dụng chính thức để bắt đầu tận dụng các lợi ích do Shaka Player cung cấp. Nhìn chung, sẽ có rất ít thay đổi về việc phát triển phần mềm và hầu hết là các yêu cầu về đảm bảo chất lượng để đối tác của chúng tôi di chuyển thành công.

Ứng dụng của tôi sắp sử dụng HLS để truyền trực tuyến nội dung, tôi nên làm gì?

Các công cụ tích hợp mới nên chọn sử dụng trình phát Shaka để phát. Ứng dụng của bạn sẽ được hỗ trợ tốt hơn về lâu dài, đồng thời sẽ tận dụng các tính năng HLS mới và cải tiến hiệu suất. Nếu quá trình tích hợp mới của bạn gặp vấn đề, hãy báo cáo lỗi càng sớm càng tốt để nhóm kỹ sư có đủ thời gian giải quyết vấn đề. Nếu ứng dụng của bạn có thời hạn gấp gáp, hãy đưa thông tin đó vào báo cáo lỗi cũng như tác động để ưu tiên cho phù hợp. Nhóm kỹ thuật của chúng tôi sẽ nỗ lực để cung cấp một giải pháp hỗ trợ đầy đủ cho người dùng của bạn.

Nội dung hoặc ứng dụng của tôi không hoạt động với Shaka Player, tôi phải làm gì?

Bạn nên gửi lỗi cho Dự án trình phát Shaka hoặc dự án Cast (xem phần Báo cáo vấn đề). Nhóm kỹ thuật Cast SDK đang tích cực theo dõi những trình theo dõi này và sẽ làm việc với bạn để giải quyết mọi vấn đề hiện có. Bạn phát hiện các vấn đề này càng sớm thì càng có nhiều thời gian để cung cấp bản sửa lỗi.

MPL không còn nhận được các bản cập nhật quan trọng nữa, điều đó có nghĩa là gì?

Trước đây, MPL đã áp dụng các tính năng HLS mới và vá các lỗi lớn thông qua các bản cập nhật quan trọng. Giờ đây, MPL sẽ không còn nhận được các thông báo đó, nên các tính năng HLS mới sẽ không được thêm vào trình phát. Tương tự, mọi vấn đề được báo cáo về việc phát HLS trên MPL sẽ không được khắc phục trong MPL. Bạn có thể giải quyết các vấn đề này bằng cách chuyển sang phát bằng Shaka Player. Nếu vấn đề vẫn tiếp diễn, bạn nên gửi lỗi kèm theo(các) vấn đề liên quan gặp phải trên Shaka Player. Đối tác nên ngừng sử dụng MPL.

Nội dung của tôi sử dụng giao thức Truyền phát mượt mà, điều này ảnh hưởng như thế nào đến ứng dụng của tôi?

Tệp nhị phân MPL vẫn sẽ được lưu trữ và ứng dụng nhận của bạn có thể truy cập. Tuy nhiên, mọi yêu cầu về tính năng và bản sửa lỗi liên quan đến tính năng Truyền trực tuyến mượt mà sẽ không được hỗ trợ vì quy cách của tính năng Truyền trực tuyến mượt mà chưa được cập nhật trong hơn 4 năm. Bạn nên di chuyển nội dung của mình để sử dụng giao thức truyền trực tuyến DASH hoặc HLS nhằm tiếp tục nhận được thông tin cập nhật về hiệu suất và dịch vụ hỗ trợ cho nội dung của bạn.

Nội dung của tôi không sử dụng giao thức HLS hoặc Smooth Stream, điều này ảnh hưởng như thế nào đến ứng dụng của tôi?

Nếu thư viện nội dung của bạn không sử dụng một trong hai giao thức truyền trực tuyến đó, thì quá trình di chuyển sẽ không ảnh hưởng đến bạn. Bạn không cần thay đổi gì trong ứng dụng.