A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from http://developer.mozilla.org/de/docs/Web/API/RTCEncodedAudioFrame below:

RTCEncodedAudioFrame - Web-APIs | MDN

RTCEncodedAudioFrame

Baseline 2023 *

Newly available

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

Das RTCEncodedAudioFrame der WebRTC API repräsentiert einen kodierten Audio-Frame im Empfangs- oder Sendepipeline von WebRTC, der mithilfe eines WebRTC Encoded Transform modifiziert werden kann.

Die Schnittstelle stellt Methoden und Eigenschaften zur Verfügung, um Metadaten des Frames abzurufen, was es ermöglicht, das Format und die Reihenfolge innerhalb der Sequenz der Frames zu bestimmen. Die data-Eigenschaft bietet Zugriff auf die kodierten Frame-Daten als Buffer, der möglicherweise verschlüsselt oder anderweitig durch einen Transform modifiziert wurde.

Instanzeigenschaften
RTCEncodedAudioFrame.timestamp Schreibgeschützt Veraltet Nicht standardisiert

Gibt den Zeitstempel zurück, zu dem die Abtastung des Frames begonnen hat.

RTCEncodedAudioFrame.data

Gibt einen Buffer zurück, der die kodierten Frame-Daten enthält.

Instanzmethoden
RTCEncodedAudioFrame.getMetadata()

Gibt die mit dem Frame verbundenen Metadaten zurück.

Beispiele

Dieser Codeausschnitt zeigt einen Handler für das rtctransform-Ereignis in einem Worker, der einen TransformStream implementiert und kodierte Frames von event.transformer.readable zu event.transformer.writable leitet (event.transformer ist ein RTCRtpScriptTransformer, das Gegenstück auf der Worker-Seite von RTCRtpScriptTransform).

Wenn der Transformer in einen Audio-Stream eingesetzt wird, wird die transform()-Methode aufgerufen mit einem RTCEncodedAudioFrame, wann immer ein neuer Frame in event.transformer.readable eingereiht wird. Die transform()-Methode zeigt, wie dies gelesen, mithilfe einer fiktiven Verschlüsselungsfunktion modifiziert und dann im Controller eingereiht werden könnte (dies leitet es letztlich durch zu event.transformer.writable und dann zurück in die WebRTC-Pipeline).

addEventListener("rtctransform", (event) => {
  const transform = new TransformStream({
    async transform(encodedFrame, controller) {
      // Reconstruct the original frame.
      const view = new DataView(encodedFrame.data);

      // Construct a new buffer
      const newData = new ArrayBuffer(encodedFrame.data.byteLength);
      const newView = new DataView(newData);

      // Encrypt frame bytes using the encryptFunction() method (not shown)
      for (let i = 0; i < encodedFrame.data.byteLength; ++i) {
        const encryptedByte = encryptFunction(~view.getInt8(i));
        newView.setInt8(i, encryptedByte);
      }

      encodedFrame.data = newData;
      controller.enqueue(encodedFrame);
    },
  });
  event.transformer.readable
    .pipeThrough(transform)
    .pipeTo(event.transformer.writable);
});

Beachten Sie, dass vollständigere Beispiele in Using WebRTC Encoded Transforms bereitgestellt werden.

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