Refactor the SoundNode class into the Sound class which controls playback and the AudioContainer class which interfaces with the underlying Web Audio API for different node types.
This issue involves a bit of a restructuring of the 0.8.1 audio systems, but it should not involve any functionality or user-facing changes. For audio sources which are longer than a (configurable) maximum duration - a MediaElementAudioSourceNode will be used to enable streaming playback instead of buffered playback.
SoundNodeclass (introduced in 0.8.1) is renamed to
AudioContainerclass has been added.
- The actual underlying source node is no longer
SoundNode#node, but is now
Sound#nodeexists as a convenient reference to this which will not break (aside from the rename of SoundNode -> Sound).