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
Working Draft  

浏览器兼容性

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support (Yes)
 
(Yes) 未实现

(Yes)

未实现
Feature Android Android Webview Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile Chrome for Android
Basic support 未实现 (Yes)
 
(Yes) 未实现 (Yes) 未实现 (Yes)

文档标签和贡献者