A Web Audio framework for making interactive music in the browser.
Breaking Changes
window
allowing it to not throw error in node contextpartialCount
and baseType
to Oscillator classes, helps with getting/setting complex types.Tone.start()
to simplify resuming the AudioContextPlayer.position
returns the playback position of the AudioBuffer accounting for any playbackRate changesretrigger
option with Tone.Player. Tone.BufferSource should be used if retriggering is desired.BREAKING CHANGES:
valueOf
, expressions can be composed in JS instead of as strings
* e.g. Time('4n') * 2 + Time('3t')
instead of Time('4n * 2 + 3t')
* this change greatly simplifies the code and is more performantBetter Source syncing to the transport, 3D Audio Spatialization and temporary fix for bug in Chrome 53+.
CHANGELOG:
start
and stop
to the TransportTime instead of the AudioContext time.
startMobile
. Using StartAudioContext in examples.DEPRECATED:
Big changes are the new event classes: Tone.Event, Tone.Loop, Tone.Part, Tone.Sequence, and Tone.Pattern. These simplify interacting with the Transport.schedule
(formerly Transport.setTimeline
). They allow you to more easily schedule loopable, schedulable, and modifiable events along the Transport's timeline.
All Changes:
onended
event from Tone.SourceexponentialRampToValueNow
->exponentialRampToValue
, setCurrentValueNow
->setRampPoint
schedule
, scheduleOnce
, and scheduleRepeat
.baseFrequency
and octaves
instead of min
and max
.DEPRECATED:
setTimeout
, setInterval
, setTimeline
in favor of new schedule
, scheduleOnce
, and scheduleRepeat
.Tone.Buffer.on("load", callback)
instead.