From: Jer Noble Date: Wed, 4 Feb 2015 00:47:12 +0000 (-0800) Subject: When playing back in reverse, make sure the grain to be played takes that into account. X-Git-Url: http://id.pley.net/sound.git/commitdiff_plain/55362d272af2844137f0f60f4b5e68fd845050cf When playing back in reverse, make sure the grain to be played takes that into account. --- diff --git a/sound.js b/sound.js index a00d422..6a481c5 100644 --- a/sound.js +++ b/sound.js @@ -272,8 +272,10 @@ Sound.prototype = { this.node.buffer = this.buffer; this.node.playbackRate.value = this._playbackRate; this.node.onended = this.onended.bind(this); - var remainingDuration = this._playbackRate < 0 ? this.nextStartTime : this.buffer.duration - this.nextStartTime; - this.node.start(0, this.nextStartTime, remainingDuration); + if (this._playbackRate < 0) + this.node.start(0, 0, this.nextStartTime); + else + this.node.start(0, this.nextStartTime, this.buffer.duration - this.nextStartTime); this.timeUpdateTimer = setInterval(this.sendTimeUpdate.bind(this), 250); },