0; });\n this.activeSounds.forEach( function(snd) { \n snd.mixSampleCountIntoBufferStartingAt(sampleCount, buffer, 0, this.sampRate);\n }.bind(this));\n // if (this.reverbSound) this.reverbSound.mixSamplesToBuffer(sampleCount, buffer, 1); \n return buffer;\n}","funcProperties":{"__isSmartRef__":true,"id":1486},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"1485":{"this":{"__isSmartRef__":true,"id":1}},"1486":{"timestamp":{"__isSmartRef__":true,"id":1487},"user":"undefined","tags":["synthesizer"]},"1487":{"isSerializedDate":true,"string":"Sun Mar 11 2012 13:52:41 GMT-0700 (PDT)"},"1488":{"varMapping":{"__isSmartRef__":true,"id":1489},"source":"function createAudioHandle() {\n if (!Global.XAudioServer) {\n console.warn('XAudioServer not loaded');\n return; }\n // Set up the buffers and bind audioHandle\n var buffSize = this.sampRate * this.nChans * 0.2; // 0.2 sec worth of samples\n var buffer = this.clearSoundBuffer(buffSize); // creates a sound buffer of all zero\n this.audioHandle = new XAudioServer(this.nChans, this.sampRate,\n buffSize/2, buffSize,\n function (sampleCount) { return this.audioUnderRun(sampleCount); }.bind(this), 0);\n}","funcProperties":{"__isSmartRef__":true,"id":1490},"__SourceModuleName__":"Global.lively.lang.Closure","__LivelyClassName__":"lively.Closure"},"1489":{"this":{"__isSmartRef__":true,"id":1}},"1490":{"timestamp":{"__isSmartRef__":true,"id":1491},"user":"undefined","tags":["setup"]},"1491":{"isSerializedDate":true,"string":"Tue Mar 13 2012 23:15:20 GMT-0700 (PDT)"},"1492":{"varMapping":{"__isSmartRef__":true,"id":1493},"source":"function clearSoundBuffer(sizeUsed) {\n // Note sizeUsed must be 2 * number of stereo samples\n var buffer = new Array(sizeUsed);\n for (var i=0; i