VideoDecoder: phương thức configure()

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

Note: This feature is available in Dedicated Web Workers.

Phương thức configure() của giao diện VideoDecoder thêm một thông điệp điều khiển vào hàng đợi để cấu hình bộ giải mã video cho việc giải mã các đoạn.

Cú pháp

js
configure(config)

Tham số

config

Một đối tượng chứa các thành viên sau:

codec

Một chuỗi chứa chuỗi codec hợp lệ. Xem tham số "codecs" để biết chi tiết về cách xây dựng chuỗi codec.

description Optional

Một ArrayBuffer, TypedArray, hoặc DataView chứa một chuỗi byte đặc thù của codec, thường được gọi là extradata.

codedWidth Optional

Một số nguyên biểu thị chiều rộng của VideoFrame tính bằng pixel, bao gồm cả phần đệm không hiển thị, trước khi điều chỉnh tỉ lệ.

codedHeight Optional

Một số nguyên biểu thị chiều cao của VideoFrame tính bằng pixel, bao gồm cả phần đệm không hiển thị, trước khi điều chỉnh tỉ lệ.

displayAspectWidth Optional

Một số nguyên biểu thị kích thước ngang của VideoFrame tính bằng pixel khi hiển thị.

displayAspectHeight Optional

Một số nguyên biểu thị kích thước dọc của VideoFrame tính bằng pixel khi hiển thị.

colorSpace Optional

Một đối tượng biểu thị VideoColorSpace, chứa các thành viên sau:

primaries

Một chuỗi biểu thị gamut màu của mẫu video. Một trong các giá trị:

  • "bt709"
  • "bt470bg"
  • "smpte170m"
transfer

Một chuỗi biểu thị đặc tính truyền dẫn. Một trong các giá trị:

  • "bt709"
  • "smpte170m"
  • "iec61966-2-1"
matrix

Một chuỗi biểu thị hệ số ma trận. Một trong các giá trị:

  • "rgb"
  • "bt709"
  • "bt470bg"
  • "smpte170m"
hardwareAcceleration Optional

Gợi ý về phương thức tăng tốc phần cứng sẽ sử dụng. Một trong các giá trị:

  • "no-preference"
  • "prefer-hardware"
  • "prefer-software"
optimizeForLatency Optional

Một giá trị boolean. Nếu là true, đây là gợi ý rằng bộ giải mã được chọn nên được tối ưu hóa để giảm thiểu số lượng đối tượng EncodedVideoChunk cần giải mã trước khi xuất VideoFrame.

flip Optional

Một giá trị boolean. Nếu là true, lật ngang được áp dụng. Mặc định là false.

rotation Optional

Một số nguyên biểu thị góc xoay (0, 90, 180 hoặc 270) theo chiều kim đồng hồ tính bằng độ. Mặc định là 0. Các số tùy ý (bao gồm số âm) được làm tròn đến góc phần tư tiếp theo.

Note: Các mục đăng ký trong WebCodecs Codec Registry liên kết đến đặc tả mô tả liệu có và làm thế nào để điền thành viên description tùy chọn.

Giá trị trả về

Không có (undefined).

Ngoại lệ

TypeError

Ném ra nếu config được cung cấp không hợp lệ.

InvalidStateError DOMException

Ném ra nếu state"closed".

NotSupportedError DOMException

Ném ra nếu config được cung cấp hợp lệ nhưng tác nhân người dùng không thể cung cấp codec có thể giải mã profile này.

Ví dụ

Ví dụ sau đây tạo một VideoDecoder mới và cấu hình nó với codec "vp8", codedWidth là 640 pixel và codedHeight là 480 pixel.

js
const init = {
  output: handleFrame,
  error(e) {
    console.log(e.message);
  },
};

const config = {
  codec: "vp8",
  codedWidth: 640,
  codedHeight: 480,
};

let decoder = new VideoDecoder(init);
decoder.configure(config);

Thông số kỹ thuật

Specification
WebCodecs
# dom-videodecoder-configure

Tương thích trình duyệt

Xem thêm