AudioBufferSourceNode
has no input and exactly one output. The number of channels in the output corresponds to the number of channels of the
AudioBuffer
that is set to the
AudioBufferSourceNode.buffer
property. If there is no buffer set—that is, if the attribute's value is
NULL
—the output contains one channel consisting of silence. An
AudioBufferSourceNode
can only be played once; that is, only one call to
AudioBufferSourceNode.start()
is allowed. If the sound needs to be played again, another
AudioBufferSourceNode
has to be created. Those nodes are cheap to create, and
AudioBuffer
s can be reused across plays. It is often said that
AudioBufferSourceNode
s have to be used in a "fire and forget" fashion: once it has been started, all references to the node can be dropped, and it will be garbage-collected automatically.