VideoEncoder: VideoEncoder() Konstruktor

Limited availability

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

Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.

Hinweis: Diese Funktion ist in Dedicated Web Workers verfügbar.

Der VideoEncoder() Konstruktor erstellt ein neues VideoEncoder-Objekt, wobei die bereitgestellte options.output-Rückruffunktion als Ausgaberückruf und die bereitgestellte options.error-Rückruffunktion als Fehlerrückruf zugewiesen werden. Zudem wird der VideoEncoder.state auf "unconfigured" gesetzt.

Syntax

js
new VideoEncoder(options)

Parameter

options

Ein Objekt, das zwei erforderliche Rückruffunktionen enthält.

output

Eine Rückruffunktion, die ein EncodedVideoChunk-Objekt als erstes Argument und optional ein Metadatenobjekt als zweites Argument erhält. Das Metadatenobjekt hat drei Mitglieder:

decoderConfig Optional

Ein Objekt, das folgendes enthält:

codec

Ein String, der einen gültigen Codec-String enthält.

description Optional

Ein ArrayBuffer, eine TypedArray oder eine DataView, die eine Folge von codecspezifischen Bytes enthält, allgemein bekannt als "extradata".

codedWidth Optional

Eine Ganzzahl, die die Breite des VideoFrame in Pixeln darstellt, möglicherweise einschließlich nicht sichtbarer Auffüllung und vor möglichen Verhältnis-Anpassungen.

codedHeight Optional

Eine Ganzzahl, die die Höhe des VideoFrame in Pixeln darstellt, möglicherweise einschließlich nicht sichtbarer Auffüllung und vor möglichen Verhältnis-Anpassungen.

displayAspectWidth Optional

Eine Ganzzahl, die die horizontale Abmessung des Seitenverhältnisses des VideoFrame bei der Wiedergabe darstellt.

displayAspectHeight Optional

Eine Ganzzahl, die die vertikale Abmessung des Seitenverhältnisses des VideoFrame bei der Wiedergabe darstellt.

colorSpace Optional

Ein Objekt, das an den VideoColorSpace-Konstruktor als init-Argument übergeben wird und den VideoFrame.colorSpace für die mit diesem decoderConfig-Objekt verknüpften VideoFrames konfiguriert. Wenn colorSpace existiert, überschreiben die angegebenen Werte alle im Bitstream enthaltenen In-Band-Werte.

hardwareAcceleration Optional

Ein String, der die Hardware-Beschleunigung für diesen Codec konfiguriert. Standardwert ist "no-preference". Optionen sind:

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

Ein boolean, der angibt, ob der ausgewählte Decoder so konfiguriert werden soll, dass die Anzahl der EncodedVideoChunks, die decodiert werden müssen, bevor ein VideoFrame ausgegeben wird, minimiert wird.

svc Optional

Ein optionales Objekt mit nur einem Mitglied: temporalLayerId, was eine Nummer ist, die die Zeitliche Ebene für das zugehörige EncodedVideoChunk identifiziert.

alphaSideData Optional

Ein ArrayBuffer, eine TypedArray oder eine DataView, die die zusätzlichen Alpha-Kanal-Daten des EncodedVideoChunk enthält.

error

Eine Rückruffunktion, die ein Error-Objekt als einziges Argument erhält.

Beispiele

Im folgenden Beispiel wird ein VideoEncoder mit den zwei erforderlichen Rückruffunktionen erstellt, eine zur Verarbeitung des kodierten Frames und die andere zur Behandlung von Fehlern.

js
const videoEncoder = new VideoEncoder({
  output(chunk, metadata) {
    console.log(chunk.timestamp);
    console.log(chunk.byteLength);
    console.log(JSON.stringify(metadata));
  },
  error(error) {
    console.log(error);
  },
});

Spezifikationen

Specification
WebCodecs
# dom-videoencoder-videoencoder

Browser-Kompatibilität