buffer
特性为
AudioBufferSourceNode
interface provides the ability to play back audio using an
AudioBuffer
as the source of the sound data.
若
buffer
property is set to the value
null
, the node generates a single channel containing silence (that is, every sample is 0).
AudioBufferSourceNode.buffer = soundBuffer;
AudioBuffer
which contains the data representing the sound which the node will play.
For a full working example, see this code running live ,或 view the source .
var myArrayBuffer = audioCtx.createBuffer(2, frameCount, audioCtx.sampleRate);
button.onclick = function() {
// Fill the buffer with white noise;
//just random values between -1.0 and 1.0
for (var channel = 0; channel < channels; channel++) {
// This gives us the actual ArrayBuffer that contains the data
var nowBuffering = myArrayBuffer.getChannelData(channel);
for (var i = 0; i < frameCount; i++) {
// Math.random() is in [0; 1.0]
// audio needs to be in [-1.0; 1.0]
nowBuffering[i] = Math.random() * 2 - 1;
}
}
// Get an AudioBufferSourceNode.
// This is the AudioNode to use when we want to play an AudioBuffer
var source = audioCtx.createBufferSource();
// set the buffer in the AudioBufferSourceNode
source.buffer = myArrayBuffer;
| 规范 | 状态 | 注释 |
|---|---|---|
|
Web 音频 API
The definition of 'buffer' in that specification. |
工作草案 | 初始定义 |
| 桌面 | 移动 | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
buffer
|
Chrome 14 | Edge 12 |
Firefox
25
注意事项
|
IE 不支持 No | Opera 15 | Safari 6 | WebView Android Yes | Chrome Android 18 |
Firefox Android
26
注意事项
|
Opera Android 14 | Safari iOS Yes | Samsung Internet Android 1.0 |
完整支持
不支持
见实现注意事项。
AudioBufferSourceNode
buffer
detune
loop
loopEnd
loopStart
playbackRate
AnalyserNode
AudioBuffer
AudioContext
AudioContextOptions
AudioDestinationNode
AudioListener
AudioNode
AudioNodeOptions
AudioParam
AudioProcessingEvent
AudioScheduledSourceNode
AudioWorklet
AudioWorkletGlobalScope
AudioWorkletNode
AudioWorkletProcessor
BaseAudioContext
BiquadFilterNode
ChannelMergerNode
ChannelSplitterNode
ConstantSourceNode
ConvolverNode
DelayNode
DynamicsCompressorNode
GainNode
IIRFilterNode
MediaElementAudioSourceNode
MediaStreamAudioDestinationNode
MediaStreamAudioSourceNode
OfflineAudioCompletionEvent
OfflineAudioContext
OscillatorNode
PannerNode
PeriodicWave
StereoPannerNode
WaveShaperNode