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

Tổng quan

SDK Cast Web receiver hỗ trợ phát nội dung bằng một số giao thức phát trực tuyế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ì Thư viện Media Player (MPL) sẽ được tải. Trong trường hợp nội dung DASH, Shaka Player sẽ được tải.

Trong tương lai, các nhóm kỹ thuật Cast SDK và Shaka Player đang hợp nhất nỗ lực để tăng khả năng hỗ trợ phát nội dung HLS trên Shaka Player. MPL sẽ không nhận được các bản cập nhật quan trọng nữa. Bạn nên chọn sử dụng Trình phát Shaka để phát nội dung HLS của ứng dụng.

Lợi ích của Shaka Player

Khi thay đổi người chơi, ứng dụng tận dụng được những lợi ích sau:

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

Lịch trình

Web receiver SDK 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 Tháng 10 năm 2022 SDK Cast Web receiver giới thiệu các API để chọn sử dụng để phát nội dung HLS trên Shaka Player.
2 Nửa sau 2024 SDK Cast Web receiver thay đổi trình phát mặc định thành Trình phát Shaka để phát nội dung HLS.

Các nhóm kỹ thuật SDK Bộ nhận web đang áp dụng phương pháp dựa trên 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 – thông báo cho Cast-sdk-announcements và được cập nhật trong hướng dẫn này.

Chọn sử dụng

Kể từ phiên bản CAF 3.0.0105, sẽ có một cấu hình cấp ứng dụng chọn tham gia nhằm sử dụng Shaka Player để phát HLS. Phiên bản này cũng giới thiệu một API cho phép người dùng chọn trong số nhiều phiên bản Shaka Player được hỗ trợ để tải. Những 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 CastReceiverContext bắt đầu. Mọi ứng dụng chọn sử dụng Shaka cho HLS đều phải đặt phiên bản Shaka Player tối thiểu là 4.3.4 để tận dụng những đ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

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

  • Loại sự kiện phát trực tiếp: 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 có quảng cáo gián đoạn hoặ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ị phần cứng 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 có thể xác minh rằng nội dung của mình không có lỗi phát nào nghiêm trọng, hãy chuyển thay đổi vào môi trường phát hành chính thức.

Chọn không tham gia

SDK Trình thu nhận trên web sẽ chuyển đổi sang mô hình chọn không sử dụng tính năng phát nội dung HLS dưới dạng 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. Khi đó, các ứng dụng có thể chọn sử dụng MPL để phát HLS bằng cách thiết lập thủ công thuộc tính này thành false. Khi CastReceiverContext khởi động, SDK Web receiver sẽ chuyển về trạng thái tải MPL thay vì Shaka Player. Hãy xem ví dụ dưới đây để 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 vấn đề

Các đối tác của chúng tôi nên gửi mọi vấn đề mà họ phát hiện thấy 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 vấn đề 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 bỏ chặn vấn đề của bạn hay không. Hãy làm theo các bước bên dưới nếu vấn đề vẫn tiếp diễn hoặc nếu bạn gặp vấn đề khác khi chuyển đổi trình phát.

  1. Hãy thử đặt shakaVersion thành một phiên bản nhánh khác để giải quyết vấn đề này. Ví dụ: nếu gặp vấn đề trên nhánh 4.3, hãy thử đặt vấn đề đó 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. Xem ghi chú phát hành của trình phát Shakaka để tìm các bản phát hành có thông tin cập nhật phù hợp nhất. Xin lưu ý rằng API shakaVersion có phiên bản được hỗ trợ tối thiểu và tối đa như được nêu chi tiết trong tài liệu tham khảo. Nếu bạn quan sát 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 Shaaka 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 Web Receiver 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. Thuộc tính này được đánh giá trong thời gian tải khi thực thể trình phát được tạo. Xem thêm trong

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

  3. Kiểm tra xem vấn đề đó đã được báo cáo trong Công cụ theo dõi lỗi của trình phát Shaaka hay Công cụ theo dõi lỗi truyền. Nhận xét về lỗi và thêm mọi thông tin có liên quan nếu nội dung đó 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 Shaaka Player. Nếu bạn nhận thấy vấn đề này tái hiện trên trang web minh hoạ cho nội dung của mình, hãy báo cáo lỗi bằng dự án Shaka Player.

  5. Báo lỗi trong Công cụ theo dõi lỗi truyền nếu bạn gặp sự cố riêng đối với Shaka Player 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ể khiến bạn có nhiều câu hỏi. Dưới đây là các câu hỏi thường gặp nhất được giải đáp để giúp bạn thực hiện quá trình di chuyển.

Tôi có nên di chuyển sang Trình phát Shaka không?

Chúng tôi khuyến khích các đối tác sử dụng nội dung HLS (Phát trực tuyến dựa trên HTTP) nên bắt đầu quá trình di chuyển càng sớm càng tốt. Do đó, ứ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 Các lợi ích dành cho người chơi của Shaka trong 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 Bộ nhận web chuyển đổi sang mô hình chọn không sử dụng nếu đối tác không xác minh trước nội dung của họ phát đúng cách trên Trình phát Shaka.

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

Đố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 rằng trải nghiệm người dùng tương đương hoặc được cải thiện khi so sánh với HLS. Để thực hiện việc này, các đối tác sẽ 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 rằng nội dung của họ có thể phát bằng Shaka Player. 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 cần tập trung trong nội dung. Sau khi được xác thực, đối tác sẽ cần thêm cờ để chọn tham gia trong môi trường ứng dụng phát hành chính thức để bắt đầu tận dụng những lợi ích do Shaka Player cung cấp. Nhìn chung, việc phát triển phần mềm không có nhiều thay đổi và hầu hết là yêu cầu đảm bảo chất lượng để các đố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ì?

Bạn phải chọn sử dụng Trình phát Shaka để phát các công cụ tích hợp mới. Ứng dụng của bạn sẽ được hỗ trợ tốt hơn về lâu dài và cũng sẽ tận dụng các tính năng HLS mới và cải thiệ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 lỗi càng sớm càng tốt để nhóm kỹ thuật có đủ thời gian giải quyết vấn đề. Nếu ứng dụng của bạn có thời hạn chặt chẽ, hãy đưa thông tin đó vào báo cáo lỗi cũng như tác động để ưu tiên phù hợp. Nhóm kỹ thuật của chúng tôi sẽ làm việc để cung cấp giải pháp nhằm 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ây giờ?

Bạn nên báo lỗi thông qua Dự án Shaka Player hoặc dự án Truyền (xem phần Báo cáo vấn đề). Nhóm kỹ thuật Cast SDK đang tích cực theo dõi các thiết bị 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ó. Càng phát hiện các vấn đề này sớm thì chúng tôi càng phải mất nhiều thời gian để khắc phục.

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

Trước đây, MPL sử dụng các tính năng HLS mới và sửa 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 nhận được nữa, 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 nên khắc phục những vấn đề này bằng cách chuyển sang Trình phát Shaka để phát. Nếu vấn đề vẫn tiếp diễn, bạn nên gửi lỗi cùng(các) vấn đề liên quan trên Trình phát Shaka. Đối tác nên tránh sử dụng MPL.

Nội dung của tôi sử dụng giao thức Smooth Streaming ảnh hưởng như thế nào đến ứng dụng của tôi?

Tệp nhị phân MPL sẽ vẫn được lưu trữ và có thể truy cập được vào ứng dụng nhận. Tuy nhiên, mọi yêu cầu tính năng và bản sửa lỗi liên quan đến tính năng Phát trực tuyến mượt mà sẽ không được hỗ trợ vì thông số kỹ thuật của tính năng Phát 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 sang sử dụng giao thức truyền trực tuyến DASH (Truyền phát thích ứng động qua HTTP) hoặc HLS (Phát trực tuyến dựa trên HTTP) để tiếp tục nhận thông tin cập nhật về hiệu suất 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 ả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 này sẽ không ảnh hưởng đến bạn. Không cần thực hiện thay đổi nào trong ứng dụng của bạn.