OfflineAudioContext: OfflineAudioContext() 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 OfflineAudioContext()
Konstruktor—Teil der Web Audio API—erstellt und gibt eine neue Instanz eines OfflineAudioContext
-Objektes zurück, das dann verwendet werden kann, um Audio in einen AudioBuffer
statt in ein Audio-Ausgabegerät zu rendern.
Syntax
new OfflineAudioContext(options)
new OfflineAudioContext(numberOfChannels, length, sampleRate)
Parameter
Sie können die Parameter für den OfflineAudioContext()
Konstruktor entweder als dasselbe Set von Parametern angeben, die als Eingaben in die Methode BaseAudioContext.createBuffer
verwendet werden, oder indem Sie diese Parameter in einem options
-Objekt übergeben. In beiden Fällen sind die einzelnen Parameter dieselben.
numberOfChannels
-
Ein ganzzahliger Wert, der die Anzahl der Kanäle spezifiziert, die der resultierende
AudioBuffer
haben soll. length
-
Ein ganzzahliger Wert, der die Größe des Puffers spezifiziert, der für den Audio-Kontext erstellt werden soll, in Sample-Frames, wobei ein Sample-Frame eine Einheit ist, die eine einzelne Audio-Datenprobe für jeden Kanal in den Audiodaten enthalten kann. Zum Beispiel hätte ein 5-Sekunden-Puffer mit einer
sampleRate
von 48000Hz eine Länge von5 * 48000 = 240000
Sample-Frames. sampleRate
-
Die Abtastrate der linearen Audiodaten in Sample-Frames pro Sekunde. Alle Benutzeragenten müssen einen Bereich von 8000Hz bis 96000Hz unterstützen und können einen breiteren Bereich unterstützen. Die am häufigsten verwendete Rate ist 44100Hz, die Abtastrate, die von CD-Audio verwendet wird.
Es ist wichtig zu beachten, dass, während Sie einen neuen AudioContext
mit dem AudioContext()
Konstruktor ohne Argumente erstellen können, der OfflineAudioContext()
Konstruktor drei Argumente erfordert, da er einen AudioBuffer
erstellen muss. Dies funktioniert genau so, wie wenn Sie einen neuen AudioBuffer
mit der BaseAudioContext.createBuffer
Methode erstellen. Weitere Details finden Sie im Abschnitt Audiodatenpuffer: Frames, Samples und Kanäle aus unserem Grundlegende Konzepte Leitfaden.
Rückgabewert
Ein neues OfflineAudioContext
Objekt, dessen zugehöriger AudioBuffer
wie gewünscht konfiguriert ist.
Wie ein regulärer AudioContext
kann ein OfflineAudioContext
das Ziel von Ereignissen sein, daher implementiert er das EventTarget
Interface.
Beispiele
const offlineCtx = new OfflineAudioContext({
numberOfChannels: 2,
length: 44100 * 40,
sampleRate: 44100,
});
const source = offlineCtx.createBufferSource();
// …
Für ein vollständig funktionierendes Beispiel sehen Sie sich unser offline-audio-context-promise GitHub Repository an (siehe auch den Quellcode.)
Spezifikationen
Specification |
---|
Web Audio API # dom-offlineaudiocontext-offlineaudiocontext |
Browser-Kompatibilität
BCD tables only load in the browser