MediaStreamAudioSourceNode: MediaStreamAudioSourceNode() Konstruktor

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2021.

Der MediaStreamAudioSourceNode()-Konstruktor der Web Audio API erstellt und gibt ein neues MediaStreamAudioSourceNode-Objekt zurück, das die erste Audiospur eines gegebenen MediaStream als Quelle verwendet.

Hinweis: Eine andere Möglichkeit, um ein MediaStreamAudioSourceNode zu erstellen, ist die Methode AudioContext.createMediaStreamSource() aufzurufen, wobei der Stream angegeben wird, aus dem Sie Audio beziehen möchten.

Syntax

js
new MediaStreamAudioSourceNode(context, options)

Parameter

context

Ein AudioContext, der den Audiokontext darstellt, mit dem der Knoten verknüpft werden soll.

options

Ein Objekt, das die Eigenschaften definiert, die der MediaStreamAudioSourceNode haben soll:

mediaStream

Eine erforderliche Eigenschaft, die den MediaStream angibt, aus dem Audio für den Knoten bezogen werden soll.

Rückgabewert

Ein neues MediaStreamAudioSourceNode-Objekt, das den Audioknoten darstellt, dessen Medien aus dem angegebenen Quellstream bezogen werden.

Ausnahmen

InvalidStateError DOMException

Wird ausgelöst, wenn der angegebene MediaStream keine Audiospuren enthält.

Beispiele

In diesem Beispiel wird getUserMedia() verwendet, um Zugriff auf die Kamera des Benutzers zu erhalten. Anschließend wird ein neues MediaStreamAudioSourceNode aus seinem MediaStream erstellt.

js
// define variables
const audioCtx = new AudioContext();

// getUserMedia block - grab stream
// put it into a MediaStreamAudioSourceNode
if (navigator.mediaDevices.getUserMedia) {
  navigator.mediaDevices
    .getUserMedia(
      // constraints: audio and video for this app
      {
        audio: true,
        video: false,
      },
    )
    .then((stream) => {
      const options = {
        mediaStream: stream,
      };

      const source = new MediaStreamAudioSourceNode(audioCtx, options);
      source.connect(audioCtx.destination);
    })
    .catch((err) => {
      console.error(`The following gUM error occurred: ${err}`);
    });
} else {
  console.log("new getUserMedia not supported on your browser!");
}

Spezifikationen

Specification
Web Audio API
# dom-mediastreamaudiosourcenode-mediastreamaudiosourcenode

Browser-Kompatibilität