The noteOn() and noteOff() methods of AudioBufferSourceNode are confusingly named in two respects.
1. The noteOff() method's name suggests a strong similarity to the MIDI concept of "Note Off", but the two ideas differ in a way that is likely to be confusing. The MIDI terminology is already well established and familiar to musicians. A MIDI "Note Off" event typically triggers the start of the release phase of a virtual instrument's note, which can last for an arbitrary amount of time before audio output actually ceases (since most musical instruments do not immediately stop producing sound when the performer stops playing). On the other hand, the noteOff() method causes audio to completely cease at the specified time.
2. The node may serve as a source for many kinds of audio other than musical notes, so the terminology is needlessly narrow.
Chris Rogers has suggested that start() and stop() may be clearer alternatives.
start() and stop() are fine, but since stop() is destructive, maybe destroyAt(time) is more representative?
I'd say that although stop() is destructive that is a side effect of its perceived purpose, which is to cause the audio source to stop making sound at the specified time.
This is a duplicate of Bug 17344, but I don't seem to the the powers to resolve it as such.
Somehow I missed the bug of which this is a duplicate -- sorry!
*** This bug has been marked as a duplicate of bug 17344 ***
bug 17344 shall remain open until agreed changes make it to the spec.