OfflineAudioContext.OfflineAudioContext()

OfflineAudioContext() 构造函数创建一个新的 OfflineAudioContext 对象实例。

语法

var myOfflineAudio = new OfflineAudioContext(numOfChannels,length,sampleRate);

参数

numOfChannels
An integer 代表该缓冲区拥有的声道的数目。该实现需要支持至少32个声道。
length
代表采样帧缓冲区的大小的整数。
sampleRate
采样帧每一秒的线性音频数据的采样率。该实现必须支持在 22050 到 96000 之间的采样率,44100 是最经常用到的采样率。

这里有个重要的警告,你可以通过不带参数的使用 new AudioContext() 构造函数创建一个新的 AudioContext,但是 OfflineAudioContext() 构造函数必须带上三个参数。当你通过 AudioContext.createBuffer 方法创建一个新的AudioBuffer 时,你也是需要做一样的事情。想要知道更多信息,请阅读我们的基本概念指南的 音频片段:帧,样本和声道

注意:像普通的 AudioContextOfflineAudioContext 可以成为事件的目标,因此它的实现是 EventTarget 接口。

例子

// 定义一个在线或者离线的音频上下文

var audioCtx = new AudioContext();
var offlineCtx = new OfflineAudioContext(2,44100*40,44100);

source = offlineCtx.createBufferSource();

// 更多代码...

注意: 想要获取完整的例子,请看我们在 Github 仓库的 offline-audio-context-promise (也可以看 源代码 )

标准

Specification Status Comment
Web Audio API
OfflineAudioContext
Recommendation  

浏览器兼容性

BCD tables only load in the browser