Skip to content

HEVC và AVC trong HLS cần xem xét những yếu tố tương thích nào?

By admin — X-News Newsroom X-Score™ 8.4 / 10 Verified across 3+ sources
Tóm tắt

Một playlist HLS có nhắc đến HEVC hoặc AVC chưa đủ để kết luận video sẽ phát trên mọi trình duyệt và thiết bị. Cần xem codec được khai báo có khớp với luồng thực tế không, container và phân đoạn có phù hợp không, thiết bị có bộ giải mã tương ứng không, và ứng dụng phát có hỗ trợ cấu hình đó hay không. Tài liệu của Apple nêu yêu cầu authoring cho thiết bị Apple; đó không phải danh sách tương thích chung cho toàn bộ hệ sinh thái HLS.

Điểm chínhHEVC và AVC là codec video; codec không đồng nghĩa với container hay giao thức phân phối HLS. · Playlist cần mô tả đúng biến thể và thuộc tính luồng theo cách trình phát có thể lựa chọn phù hợp. · Khả năng giải mã phụ thuộc thiết bị, hệ điều hành, trình duyệt hoặc ứng dụng và cấu hình codec cụ thể. · [1] Tài liệu Apple quy định yêu cầu authoring hướng tới thiết bị Apple, không đại diện cho mọi triển khai HLS. · [2] Hướng dẫn MDN giúp phân biệt codec và hỗ trợ trình duyệt; khả năng thực tế còn phải kiểm tra trên môi trường đích.

Phân biệt codec, container và HLS

Codec xác định cách hình ảnh được mã hóa và giải mã. AVC (H.264) và HEVC (H.265) là hai họ mã hóa video khác nhau; chúng không phải tên container. Container hoặc định dạng phân đoạn đóng gói dữ liệu và các track, còn HLS mô tả cách playlist và media segment được phân phối, lựa chọn, tải và phát. Khi một nội dung không chạy, cần xác định lỗi ở lớp nào thay vì gọi chung là “HLS không hỗ trợ codec”.

MDN giải thích các định dạng codec video và lưu ý sự khác nhau về hỗ trợ giữa trình duyệt, thiết bị và hệ điều hành. Một codec được biết đến rộng rãi vẫn không chứng minh mọi thiết bị có bộ giải mã phù hợp hoặc mọi ứng dụng có thể dùng nó trong cùng container. [2]

Playlist phải mô tả đúng luồng

Trong HLS, playlist có thể cung cấp nhiều rendition hoặc biến thể để trình phát chọn theo điều kiện và khả năng. Thông tin codec khai báo cần phản ánh nội dung thực tế; nếu mô tả sai, trình phát có thể chọn luồng mà nó không giải mã được hoặc xử lý không như dự kiến. Vì vậy, việc xác minh không dừng ở dòng chữ “HEVC” hay “AVC”: cần kiểm tra playlist, thông tin codec, phân đoạn và cấu hình của encoder hoặc đóng gói.

Illustration: Playlist phải mô tả đúng Decorative illustration for the section "Playlist phải mô tả đúng"; visual only, carries no data.

Tài liệu HLS authoring của Apple trình bày các yêu cầu liên quan đến playlist, phân đoạn, biến thể và codec trong phạm vi thiết bị Apple. Đó là cơ sở hữu ích khi tạo nội dung hướng tới các thiết bị ấy, nhưng không nên đổi câu “Apple yêu cầu” thành “mọi trình phát HLS đều yêu cầu giống hệt”. [1]

Khả năng giải mã khác nhau theo thiết bị

Hỗ trợ codec có thể khác giữa phần cứng, phiên bản hệ điều hành, trình duyệt, ứng dụng và thậm chí các cấu hình profile hoặc mức của codec. Một thiết bị có thể giải mã AVC nhưng không hỗ trợ HEVC trong một đường phát cụ thể; thiết bị khác có thể phụ thuộc vào bộ giải mã phần cứng hay phần mềm. Không thể suy ra khả năng chỉ từ tên thương hiệu hoặc việc thiết bị mới hơn. Hãy xác định chính xác hệ điều hành và trình phát đang thử.

Nếu sản phẩm hướng tới nhiều loại thiết bị, nên cân nhắc cung cấp các biến thể phù hợp và để trình phát chọn trong số cấu hình mà nó hỗ trợ. Cấu hình cụ thể phải theo yêu cầu phân phối, bản quyền và tài liệu của nền tảng đích; bài viết này không thể thay thế kiểm tra cấp phép hay quy định của nhà cung cấp. Hướng dẫn MDN là tham khảo giáo dục về codec trên web, không phải cam kết hỗ trợ của một dịch vụ phát trực tuyến bất kỳ. [2]

Container và phân đoạn vẫn là một phần của phép thử

Luồng video có thể được đóng gói trong các định dạng container hoặc cấu trúc phân đoạn khác nhau. Việc codec được hỗ trợ không tự đảm bảo container, timestamp, track âm thanh, MIME type và cách phân đoạn đều được trình phát xử lý đúng. Khi kiểm tra, ghi nhận codec thực tế, container, playlist liên quan, loại phân đoạn và thông báo lỗi. Tránh thay đổi encoder và cách đóng gói cùng lúc, bởi nếu lỗi biến mất sẽ không biết yếu tố nào tạo khác biệt.

Illustration: Container và phân đoạn vẫn là một Decorative illustration for the section "Container và phân đoạn vẫn là một"; visual only, carries no data.

Một phép thử hữu ích dùng cùng thiết bị và trình phát, chỉ đổi một biến như AVC/HEVC hoặc cấu hình container, rồi quan sát khả năng bắt đầu phát, âm thanh, hình ảnh và tìm kiếm. Hãy xem lỗi giải mã, lỗi tải segment và lỗi chọn variant là các nhóm khác nhau. Điều này không khẳng định kết quả sẽ giống nhau trên thiết bị khác; nó chỉ giúp khoanh vùng ở môi trường được thử.

Xây dựng ma trận kiểm thử thay vì kết luận tuyệt đối

Ghi một ma trận gồm thiết bị, hệ điều hành, ứng dụng/trình duyệt, codec, container và kết quả. Đánh dấu riêng cấu hình đã kiểm thử, cấu hình chưa thử và thông tin lấy từ tài liệu. Nếu có nhiều biến thể HLS, xác nhận mỗi playlist con và từng luồng đều khai báo đúng. Khi lỗi xuất hiện, thử một đường cơ sở đơn giản, sau đó thêm biến thể hoặc track bổ sung từng bước. Đừng diễn giải một lần phát thành cam kết cho toàn bộ người xem.

Đối với mục tiêu phát trên thiết bị Apple, so sánh quy trình tạo nội dung với đặc tả authoring tương ứng; đối với các nền tảng khác, tra tài liệu chính thức và kiểm thử riêng. Nếu muốn Theo dõi thêm lịch bóng đá hôm nay cùng KLIVE, đường dẫn này phục vụ nội dung thể thao trên KLIVE chứ không xác nhận codec, chất lượng hay khả năng tương thích của trình phát.

Nguồn tham khảo

  1. Apple Developer — HLS authoring specification for Apple devices
  2. MDN — Web video codec guide

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

HEVC và AVC có phải là định dạng HLS không?

Không. Đây là codec video. HLS là phương thức phân phối bằng playlist và segment; container và thông tin khai báo cũng cần tương thích.

Nếu một thiết bị phát được AVC thì chắc chắn phát được HEVC không?

Không. Hai codec khác nhau và hỗ trợ tùy thiết bị, hệ điều hành, trình phát cùng cấu hình luồng.

Tài liệu Apple có thể dùng làm chuẩn cho mọi trình phát HLS không?

Không. Tài liệu nêu yêu cầu authoring cho thiết bị Apple; các hệ sinh thái khác cần đối chiếu tài liệu và kiểm thử riêng.

Nên kiểm tra gì ngoài tên codec?

Kiểm tra playlist và khai báo codec, container, segment, track âm thanh, trình phát, hệ điều hành và khả năng giải mã trên thiết bị đích.

About the Author

admin covers this beat for X-News.

Get every story from this desk — plus the full archive and the Daily Intelligence Brief — with an X-News Premium subscription.

Get the Daily Intelligence Brief