Baseline 2023
Newly available
Hinweis: Diese Funktion ist in Dedicated Web Workers verfügbar.
Die type
-Eigenschaft des RTCEncodedVideoFrame
-Interfaces zeigt an, ob dieses Frame ein Schlüsselbild (key frame), ein Delta-Frame oder ein leeres Frame ist.
Der Typ kann einen der folgenden Werte haben:
key
Dies ist ein "Schlüsselbild", das alle Informationen enthält, die benötigt werden, um ein Bild darzustellen. Es kann ohne Bezugnahme auf andere Frames dekodiert werden.
delta
Dies ist ein "Delta-Frame", das Ãnderungen an einem Bild im Verhältnis zu einem vorherigen Frame enthält. Das Frame kann nicht dekodiert werden, ohne Zugang zu den Frame(s) zu haben, auf die es sich bezieht.
empty
Dieses Frame enthält keine Daten. Dieser Wert ist unerwartet und kann darauf hindeuten, dass die Transformation eine Referenz zu Frames hält, nachdem sie transformiert und an RTCRtpScriptTransformer.writable
weitergeleitet wurden (nachdem das Worker-Seiten-Frame-Objekt zurück zur Haupt-Thread-WebRTC-Pipeline übertragen wurde, wird es keine Daten mehr haben).
Die Implementierung einer transform()
-Funktion in einem WebRTC Encoded Transform kann den type
betrachten und den Transformationscode basierend darauf ändern, ob es sich um ein Schlüsselbild oder ein Delta-Frame handelt:
const transformer = new TransformStream({
async transform(encodedFrame, controller) {
if (encodedFrame.type === "key") {
// Apply key frame transformation
} else if (encodedFrame.type === "delta") {
// Apply delta frame transformation
} else {
// Empty
// Check transform is not holding reference to frames after processing!
}
controller.enqueue(encodedFrame);
},
});
Spezifikationen Browser-Kompatibilität Siehe auch MDN-Feedback-Box War diese Ãbersetzung hilfreich?
Diese Seite wurde automatisch aus dem Englischen übersetzt.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4