Bản cập nhật về nội dung nghe nhìn trong Chrome 70

François Beaufort
François Beaufort

Xem video bằng tính năng Hình trong hình

Chế độ Hình trong hình (PiP) cho phép người dùng xem video trong một cửa sổ nổi (luôn nằm trên các cửa sổ khác) để họ có thể theo dõi nội dung đang xem trong khi tương tác với các trang web hoặc ứng dụng khác. Với API Web Hình trong hình mới, bạn có thể bắt đầu và kiểm soát chế độ Hình trong hình cho video trên trang web của mình.

Hãy đọc bài viết của chúng tôi để tìm hiểu tất cả thông tin về tính năng này.

Bộ giải mã AV1

AV1 là bộ mã hoá và giải mã thế hệ mới do Alliance for Open Media phát triển. AV1 cải thiện hiệu quả nén thêm hơn 30% so với bộ mã hoá và giải mã video tiên tiến hiện tại là VP9. Chrome 70 thêm bộ giải mã AV1 vào Chrome Desktop x86-64 dựa trên quy cách luồng bit chính thức. Hiện tại, chỉ có hồ sơ 0 là "Chính" và không bao gồm khả năng mã hoá. Vùng chứa được hỗ trợ là MP4 (ISO-BMFF) (xem Vùng chứa và bộ mã hoá và giải mã để biết nội dung giải thích ngắn gọn về vùng chứa).

Cách dùng thử AV1:

  1. Truy cập vào trang YouTube TestTube.
  2. Chọn "Ưu tiên dùng AV1 cho chế độ SD" hoặc "Luôn ưu tiên dùng AV1" để có được độ phân giải AV1 mong muốn. Xin lưu ý rằng ở độ phân giải cao hơn, AV1 có nhiều khả năng gặp phải vấn đề về hiệu suất phát trên một số thiết bị.
  3. Thử phát các đoạn video trên YouTube từ Danh sách phát khởi chạy bản beta của AV1.
  4. Xác nhận bộ mã hoá và giải mã av01 trong phần "Thống kê chi tiết".
Thống kê chi tiết về AV1 trên YouTube
Số liệu thống kê dành cho những người đam mê công nghệ về AV1 trên YouTube.

Hỗ trợ chuyển đổi bộ mã hoá và vùng chứa trong MSE

Chrome sẽ hỗ trợ thêm cho các hiệu ứng chuyển đổi luồng giữa nhiều bộ mã hoá và nhiều byte trong chế độ phát Tiện ích nguồn nội dung nghe nhìn bằng phương thức changeType() mới trên SourceBuffer. Phương thức này cho phép thay đổi loại byte nội dung đa phương tiện được thêm vào SourceBuffer sau đó.

Phiên bản MSE hiện tại hỗ trợ tính năng phát nội dung đa phương tiện thích ứng; tuy nhiên, tính năng thích ứng yêu cầu mọi nội dung đa phương tiện được thêm vào SourceBuffer phải tuân thủ loại MIME được cung cấp khi tạo SourceBuffer ban đầu thông qua MediaSource.addSourceBuffer(type). Bộ mã hoá và giải mã từ loại đó và mọi phân đoạn khởi chạy đã phân tích cú pháp trước đó phải giống nhau trong suốt quá trình. Điều này có nghĩa là trang web phải thực hiện các bước rõ ràng để hoàn tất việc chuyển đổi bộ mã hoá và giải mã hoặc luồng byte (bằng cách sử dụng nhiều phần tử nội dung đa phương tiện hoặc các bản nhạc SourceBuffer và chuyển đổi giữa các phần tử đó), làm tăng độ phức tạp của ứng dụng và độ trễ mà người dùng nhìn thấy. (Các hiệu ứng chuyển đổi như vậy yêu cầu ứng dụng web thực hiện hành động đồng bộ trên luồng chính của trình kết xuất). Độ trễ chuyển đổi này làm giảm độ mượt mà của quá trình phát nội dung nghe nhìn trong các chuyển đổi.

Với phương thức changeType() mới, SourceBuffer có thể lưu vào bộ đệm và hỗ trợ phát trên nhiều định dạng luồng byte và bộ mã hoá và giải mã. Phương thức mới này giữ lại nội dung đa phương tiện đã lưu vào bộ đệm trước đó, trừ trường hợp xoá hoặc loại bỏ khung hình được mã hoá MSE trong tương lai, đồng thời tận dụng logic ghép nối và lưu vào bộ đệm trong thuật toán xử lý khung hình được mã hoá MSE hiện có.

Dưới đây là cách sử dụng phương thức changeType():

const sourceBuffer = myMediaSource.addSourceBuffer('video/webm; codecs="opus, vp09.00.10.08"');
sourceBuffer.appendBuffer(someWebmOpusVP9Data);

// Later on...
if ('changeType' in sourceBuffer) {
  // Change source buffer type and append new data.
  sourceBuffer.changeType('video/mp4; codecs="mp4a.40.5, avc1.4d001e"');
  sourceBuffer.appendBuffer(someMp4AacAvcData);
}

Như dự kiến, nếu trình duyệt không hỗ trợ loại đã truyền, thì phương thức này sẽ gửi một ngoại lệ NotSupportedError.

Hãy xem mẫu để phát với bộ đệm bộ mã hoá và giải mã đa dạng thức và phát luồng byte đa dạng thức của một phần tử âm thanh.

Ý định phát hành | Trình theo dõi trạng thái Chrome | Lỗi Chromium

Opus trong MP4 cho MSE

Bộ mã hoá và giải mã âm thanh Opus mở và rất linh hoạt đã được hỗ trợ trong các phần tử <audio><video> kể từ Chrome 33. Sau đó, chúng tôi đã thêm tính năng hỗ trợ Opus trong ISO-BMFF (còn gọi là Opus trong MP4). Và giờ đây, Opus trong MP4 đã có trong Chrome 70 cho Tiện ích nguồn nội dung nghe nhìn.

Sau đây là cách bạn có thể phát hiện xem Opus trong MP4 có được hỗ trợ cho MSE hay không:

if (MediaSource.isTypeSupported('audio/mp4; codecs="opus"')) {
  // TODO: Fetch data and feed it to a media source.
}

Nếu bạn muốn xem ví dụ đầy đủ, hãy xem mẫu chính thức của chúng tôi.

Do thiếu các công cụ để kết hợp Opus trong MP4 với các giá trị cắt bớt cuối và bỏ qua trước chính xác, nếu độ chính xác đó quan trọng với bạn, bạn cần sử dụng SourceBuffer.appendWindow{Start,End}SourceBuffer.timestampOffset trong Chrome để có được chế độ phát chính xác theo mẫu.

Ý định phát hành | Trình theo dõi trạng thái Chrome | Lỗi Chromium

Cho phép phát nội dung được bảo vệ theo mặc định trên Android

Trong Chrome 70 dành cho Android, giá trị mặc định của chế độ cài đặt trang web "nội dung được bảo vệ" sẽ thay đổi từ "Hỏi trước" thành "Được phép", giúp giảm bớt sự phiền hà liên quan đến việc phát nội dung nghe nhìn như vậy. Thay đổi này có thể xảy ra một phần do bạn có thể thực hiện thêm một số bước để xoá giấy phép nội dung nghe nhìn cùng với cookie và dữ liệu trang web, nhằm đảm bảo rằng các trang web không dùng giấy phép nội dung đa phương tiện để theo dõi những người dùng đã xoá dữ liệu duyệt web.

ALT_TEXT_HERE
Chế độ cài đặt nội dung được bảo vệ trong Android.