{"_id":"audio-buffer-utils","_rev":"4208517","name":"audio-buffer-utils","description":"Utility functions for AudioBuffers","dist-tags":{"latest":"5.1.2"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"time":{"modified":"2026-03-04T17:04:31.000Z","created":"2014-04-18T17:43:19.971Z","5.1.2":"2019-03-09T00:16:11.084Z","5.1.1":"2017-07-01T23:11:16.780Z","5.1.0":"2017-06-28T03:47:03.726Z","5.0.1":"2017-05-24T04:20:38.510Z","5.0.0":"2017-05-24T01:40:58.490Z","4.3.2":"2017-04-30T02:03:10.639Z","4.3.1":"2017-04-15T17:04:03.011Z","4.3.0":"2017-04-13T00:15:27.030Z","4.2.0":"2017-04-12T22:52:52.553Z","4.1.1":"2017-04-07T17:49:35.420Z","4.1.0":"2017-03-17T15:27:59.168Z","4.0.3":"2017-03-14T20:59:41.553Z","4.0.2":"2017-02-19T08:17:22.875Z","4.0.1":"2017-02-13T11:53:15.096Z","4.0.0":"2017-02-13T11:48:15.622Z","3.1.2":"2016-07-06T19:35:02.944Z","3.1.1":"2016-05-04T02:13:30.677Z","3.1.0":"2016-05-03T02:42:02.136Z","3.0.0":"2016-05-03T00:44:32.988Z","2.0.2":"2016-04-04T03:41:44.781Z","2.0.1":"2016-01-31T03:48:04.217Z","2.0.0":"2016-01-29T19:23:40.261Z","1.1.0":"2015-12-30T01:09:33.032Z","1.0.0":"2015-12-28T22:46:05.437Z","0.1.0":"2014-08-13T16:29:10.041Z","0.0.2":"2014-04-29T00:11:00.832Z","0.0.1":"2014-04-18T17:43:19.971Z"},"users":{},"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"repository":{"type":"git","url":"git://github.com/audiojs/audio-buffer-utils.git"},"versions":{"5.1.2":{"name":"audio-buffer-utils","version":"5.1.2","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"node test.js","test:browser":"budo test.js"},"repository":{"type":"git","url":"git://github.com/audiojs/audio-buffer-utils.git"},"keywords":["web","audio","audiojs","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yv","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/audiojs/audio-buffer-utils/issues"},"homepage":"https://github.com/audiojs/audio-buffer-utils","devDependencies":{"almost-equal":"^1.1.0","is-browser":"^2.0.1","ndarray":"^1.0.18","tape":"^4.6.3"},"dependencies":{"audio-buffer":"^4.0.0","audio-buffer-from":"^1.0.0","audio-context":"^1.0.0","clamp":"^1.0.1","is-audio-buffer":"^1.0.8","is-browser":"^2.0.1","is-buffer":"^2.0.0"},"gitHead":"1be57a8c7ab09745fd54e4f367190a5c27e71f4b","_id":"audio-buffer-utils@5.1.2","_npmVersion":"6.4.1","_nodeVersion":"11.10.0","_npmUser":{"name":"dy","email":"df.creative@gmail.com"},"dist":{"shasum":"8cd40d86ec7dc0b4574ffd88d3349545fbb535b4","size":12023,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-5.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-5.1.2.tgz"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/audio-buffer-utils_5.1.2_1552090570987_0.8839233041708456"},"_hasShrinkwrap":false,"publish_time":1552090571084,"_cnpm_publish_time":1552090571084,"_cnpmcore_publish_time":"2021-12-17T02:18:28.559Z"},"5.1.1":{"name":"audio-buffer-utils","version":"5.1.1","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"node test.js","test:browser":"budo test.js"},"repository":{"type":"git","url":"git://github.com/audiojs/audio-buffer-utils.git"},"keywords":["web","audio","audiojs","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yv","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/audiojs/audio-buffer-utils/issues"},"homepage":"https://github.com/audiojs/audio-buffer-utils","devDependencies":{"almost-equal":"^1.1.0","is-browser":"^2.0.1","ndarray":"^1.0.18","tape":"^4.6.3"},"dependencies":{"audio-buffer":"^4.0.0","audio-buffer-from":"^1.0.0","audio-context":"^1.0.0","clamp":"^1.0.1","is-audio-buffer":"^1.0.8","is-browser":"^2.0.1","is-buffer":"^1.1.5","negative-index":"^1.0.2"},"gitHead":"d0eb3f248c3bac75dddeca0a566402289bd4e89c","_id":"audio-buffer-utils@5.1.1","_shasum":"b022bad9354e65a6fdab9db10c1af9509a0aded3","_from":".","_npmVersion":"4.6.1","_nodeVersion":"8.1.2","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"dist":{"shasum":"b022bad9354e65a6fdab9db10c1af9509a0aded3","size":11405,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-5.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-5.1.1.tgz"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/audio-buffer-utils-5.1.1.tgz_1498950675795_0.12421416351571679"},"directories":{},"publish_time":1498950676780,"_hasShrinkwrap":false,"_cnpm_publish_time":1498950676780,"_cnpmcore_publish_time":"2021-12-17T02:18:28.775Z"},"5.1.0":{"name":"audio-buffer-utils","version":"5.1.0","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"node test.js","test:browser":"budo test.js"},"repository":{"type":"git","url":"git://github.com/audiojs/audio-buffer-utils.git"},"keywords":["web","audio","audiojs","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yv","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/audiojs/audio-buffer-utils/issues"},"homepage":"https://github.com/audiojs/audio-buffer-utils","devDependencies":{"almost-equal":"^1.1.0","is-browser":"^2.0.1","ndarray":"^1.0.18","tape":"^4.6.3"},"dependencies":{"audio-buffer":"^4.0.0","audio-buffer-from":"^1.0.0","audio-context":"^1.0.0","clamp":"^1.0.1","is-audio-buffer":"^1.0.8","is-browser":"^2.0.1","is-buffer":"^1.1.5","negative-index":"^1.0.2"},"gitHead":"b7c3d133db0276db4b7948879fd8df23fc299875","_id":"audio-buffer-utils@5.1.0","_shasum":"6a4653c62aac31f2faae90c7eedc829e8103abfb","_from":".","_npmVersion":"4.6.1","_nodeVersion":"8.1.2","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"dist":{"shasum":"6a4653c62aac31f2faae90c7eedc829e8103abfb","size":11339,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-5.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-5.1.0.tgz"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/audio-buffer-utils-5.1.0.tgz_1498621622665_0.18429379165172577"},"directories":{},"publish_time":1498621623726,"_hasShrinkwrap":false,"_cnpm_publish_time":1498621623726,"_cnpmcore_publish_time":"2021-12-17T02:18:28.961Z"},"5.0.1":{"name":"audio-buffer-utils","version":"5.0.1","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"node test.js","test:browser":"budo test.js"},"repository":{"type":"git","url":"git://github.com/audiojs/audio-buffer-utils.git"},"keywords":["web","audio","audiojs","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yv","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/audiojs/audio-buffer-utils/issues"},"homepage":"https://github.com/audiojs/audio-buffer-utils","devDependencies":{"almost-equal":"^1.1.0","is-browser":"^2.0.1","ndarray":"^1.0.18","tape":"^4.6.3"},"dependencies":{"audio-buffer":"^4.0.0","audio-context":"^1.0.0","clamp":"^1.0.1","is-audio-buffer":"^1.0.8","is-browser":"^2.0.1","is-buffer":"^1.1.5","negative-index":"^1.0.2"},"gitHead":"17dbb2d9d44720916d8c3856d23161e33ce92253","_id":"audio-buffer-utils@5.0.1","_shasum":"e62d91010a37620dd6e50c7d9d4438287fda7cb2","_from":".","_npmVersion":"3.7.2","_nodeVersion":"6.2.0","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"e62d91010a37620dd6e50c7d9d4438287fda7cb2","size":11865,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-5.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-5.0.1.tgz"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/audio-buffer-utils-5.0.1.tgz_1495599637515_0.8743666501250118"},"directories":{},"publish_time":1495599638510,"_hasShrinkwrap":false,"_cnpm_publish_time":1495599638510,"_cnpmcore_publish_time":"2021-12-17T02:18:29.220Z"},"5.0.0":{"name":"audio-buffer-utils","version":"5.0.0","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"node test.js","test:browser":"budo test.js"},"repository":{"type":"git","url":"git://github.com/audiojs/audio-buffer-utils.git"},"keywords":["web","audio","audiojs","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yv","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/audiojs/audio-buffer-utils/issues"},"homepage":"https://github.com/audiojs/audio-buffer-utils","devDependencies":{"almost-equal":"^1.1.0","is-browser":"^2.0.1","ndarray":"^1.0.18","tape":"^4.6.3"},"dependencies":{"audio-buffer":"^4.0.0","audio-context":"^1.0.0","buffer-to-arraybuffer":"0.0.4","clamp":"^1.0.1","is-audio-buffer":"^1.0.8","is-browser":"^2.0.1","is-buffer":"^1.1.5","negative-index":"^1.0.2"},"gitHead":"bd3f104fccbcc5e1607c6fba30ecd5dc59bf802e","_id":"audio-buffer-utils@5.0.0","_shasum":"5b84012f9f2bd5c7ac1e9b20707e05b02d7be081","_from":".","_npmVersion":"3.7.2","_nodeVersion":"6.2.0","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"5b84012f9f2bd5c7ac1e9b20707e05b02d7be081","size":11866,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-5.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-5.0.0.tgz"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/audio-buffer-utils-5.0.0.tgz_1495590057445_0.8558655271772295"},"directories":{},"publish_time":1495590058490,"_hasShrinkwrap":false,"_cnpm_publish_time":1495590058490,"_cnpmcore_publish_time":"2021-12-17T02:18:29.444Z"},"4.3.2":{"name":"audio-buffer-utils","version":"4.3.2","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"node test.js","test:browser":"budo test.js"},"repository":{"type":"git","url":"git://github.com/audiojs/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yv","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/audiojs/audio-buffer-utils/issues"},"homepage":"https://github.com/audiojs/audio-buffer-utils","devDependencies":{"almost-equal":"^1.1.0","is-browser":"^2.0.1","tape":"^4.6.3"},"dependencies":{"audio-buffer":"^3.1.1","audio-context":"^1.0.0","clamp":"^1.0.1","is-audio-buffer":"^1.0.0","is-browser":"^2.0.1","negative-index":"^1.0.2","typedarray-methods":"^1.0.0"},"gitHead":"224a8f92b4e83cafc9b823ffa6ccafe28d390665","_id":"audio-buffer-utils@4.3.2","_shasum":"d555faed8d6ceeb120619e39fa691374f2103380","_from":".","_npmVersion":"3.7.2","_nodeVersion":"6.2.0","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"d555faed8d6ceeb120619e39fa691374f2103380","size":9860,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-4.3.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-4.3.2.tgz"},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/audio-buffer-utils-4.3.2.tgz_1493517789938_0.921593104954809"},"directories":{},"publish_time":1493517790639,"_hasShrinkwrap":false,"_cnpm_publish_time":1493517790639,"_cnpmcore_publish_time":"2021-12-17T02:18:29.666Z"},"4.3.1":{"name":"audio-buffer-utils","version":"4.3.1","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"node test.js","test:browser":"budo test.js"},"repository":{"type":"git","url":"git://github.com/audiojs/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yv","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/audiojs/audio-buffer-utils/issues"},"homepage":"https://github.com/audiojs/audio-buffer-utils","devDependencies":{"almost-equal":"^1.1.0","is-browser":"^2.0.1","tape":"^4.6.3"},"dependencies":{"audio-buffer":"^3.1.1","audio-context":"^0.1.0","clamp":"^1.0.1","is-audio-buffer":"^1.0.0","is-browser":"^2.0.1","negative-index":"^1.0.2","typedarray-methods":"^1.0.0"},"gitHead":"63d0efacdb26e0dfef6d3aaead6fe0843e92d090","_id":"audio-buffer-utils@4.3.1","_shasum":"6db9e6eaa01a10301470e4e34a33154af1b09e0b","_from":".","_npmVersion":"3.7.2","_nodeVersion":"6.2.0","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"6db9e6eaa01a10301470e4e34a33154af1b09e0b","size":9517,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-4.3.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-4.3.1.tgz"},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/audio-buffer-utils-4.3.1.tgz_1492275840919_0.7498677482362837"},"directories":{},"publish_time":1492275843011,"_hasShrinkwrap":false,"_cnpm_publish_time":1492275843011,"_cnpmcore_publish_time":"2021-12-17T02:18:29.902Z"},"4.3.0":{"name":"audio-buffer-utils","version":"4.3.0","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"node test.js","test:browser":"budo test.js"},"repository":{"type":"git","url":"git://github.com/audiojs/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yv","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/audiojs/audio-buffer-utils/issues"},"homepage":"https://github.com/audiojs/audio-buffer-utils","devDependencies":{"almost-equal":"^1.1.0","is-browser":"^2.0.1","tape":"^4.6.3"},"dependencies":{"audio-buffer":"^3.1.1","audio-context":"^0.1.0","clamp":"^1.0.1","is-audio-buffer":"^1.0.0","is-browser":"^2.0.1","negative-index":"^1.0.2","typedarray-methods":"^1.0.0"},"gitHead":"2dc5bf620cc0c9c0802e4e536715119823d1052a","_id":"audio-buffer-utils@4.3.0","_shasum":"331125e5cb0703bc573be2e711994b328fe98f8d","_from":".","_npmVersion":"3.7.2","_nodeVersion":"6.2.0","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"331125e5cb0703bc573be2e711994b328fe98f8d","size":9524,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-4.3.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-4.3.0.tgz"},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/audio-buffer-utils-4.3.0.tgz_1492042526256_0.6193084318656474"},"directories":{},"publish_time":1492042527030,"_hasShrinkwrap":false,"_cnpm_publish_time":1492042527030,"_cnpmcore_publish_time":"2021-12-17T02:18:30.530Z"},"4.2.0":{"name":"audio-buffer-utils","version":"4.2.0","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"node test.js","test:browser":"budo test.js"},"repository":{"type":"git","url":"git://github.com/audiojs/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yv","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/audiojs/audio-buffer-utils/issues"},"homepage":"https://github.com/audiojs/audio-buffer-utils","devDependencies":{"almost-equal":"^1.1.0","is-browser":"^2.0.1","tape":"^4.6.3"},"dependencies":{"audio-buffer":"^3.1.1","audio-context":"^0.1.0","clamp":"^1.0.1","is-audio-buffer":"^1.0.0","is-browser":"^2.0.1","negative-index":"^1.0.2","typedarray-methods":"^1.0.0"},"gitHead":"ef10905933b66a037a21681aada59de55a01a8b2","_id":"audio-buffer-utils@4.2.0","_shasum":"49a691547999bbb6aab2eef78ecb3b6a515e9e8d","_from":".","_npmVersion":"3.7.2","_nodeVersion":"6.2.0","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"49a691547999bbb6aab2eef78ecb3b6a515e9e8d","size":9435,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-4.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-4.2.0.tgz"},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/audio-buffer-utils-4.2.0.tgz_1492037570646_0.05782889830879867"},"directories":{},"publish_time":1492037572553,"_hasShrinkwrap":false,"_cnpm_publish_time":1492037572553,"_cnpmcore_publish_time":"2021-12-17T02:18:30.814Z"},"4.1.1":{"name":"audio-buffer-utils","version":"4.1.1","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"node test.js","test:browser":"budo test.js"},"repository":{"type":"git","url":"git://github.com/audiojs/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yv","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/audiojs/audio-buffer-utils/issues"},"homepage":"https://github.com/audiojs/audio-buffer-utils","devDependencies":{"almost-equal":"^1.1.0","is-browser":"^2.0.1","tape":"^4.6.3"},"dependencies":{"audio-buffer":"^2.0.0","clamp":"^1.0.1","is-audio-buffer":"^1.0.0","is-browser":"^2.0.1","negative-index":"^1.0.2","typedarray-methods":"^1.0.0"},"gitHead":"cb9ef5ba71eeb19f8e4d8d74790ce2edaedb9ae5","_id":"audio-buffer-utils@4.1.1","_shasum":"99460ff2b5a2185b22bcaf6c21bd73c458138d85","_from":".","_npmVersion":"3.7.2","_nodeVersion":"6.2.0","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"99460ff2b5a2185b22bcaf6c21bd73c458138d85","size":9301,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-4.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-4.1.1.tgz"},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/audio-buffer-utils-4.1.1.tgz_1491587373290_0.935166893992573"},"directories":{},"publish_time":1491587375420,"_hasShrinkwrap":false,"_cnpm_publish_time":1491587375420,"_cnpmcore_publish_time":"2021-12-17T02:18:31.081Z"},"4.1.0":{"name":"audio-buffer-utils","version":"4.1.0","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"node test.js","test:browser":"budo test.js"},"repository":{"type":"git","url":"git://github.com/audiojs/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yv","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/audiojs/audio-buffer-utils/issues"},"homepage":"https://github.com/audiojs/audio-buffer-utils","devDependencies":{"almost-equal":"^1.1.0","is-browser":"^2.0.1","tape":"^4.6.3"},"dependencies":{"audio-buffer":"^2.0.0","clamp":"^1.0.1","is-audio-buffer":"^1.0.0","is-browser":"^2.0.1","negative-index":"^1.0.2","typedarray-methods":"^1.0.0"},"gitHead":"41e43bb0c40883914ef60d8f3691217680f27239","_id":"audio-buffer-utils@4.1.0","_shasum":"dfabb999a114d140a81cd264c016b16a8cf9967d","_from":".","_npmVersion":"3.7.2","_nodeVersion":"6.2.0","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"dfabb999a114d140a81cd264c016b16a8cf9967d","size":9116,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-4.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-4.1.0.tgz"},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/audio-buffer-utils-4.1.0.tgz_1489764478915_0.8861513945739716"},"directories":{},"publish_time":1489764479168,"_hasShrinkwrap":false,"_cnpm_publish_time":1489764479168,"_cnpmcore_publish_time":"2021-12-17T02:18:31.299Z"},"4.0.3":{"name":"audio-buffer-utils","version":"4.0.3","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"node test.js","test:browser":"budo test.js"},"repository":{"type":"git","url":"git://github.com/audiojs/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yv","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/audiojs/audio-buffer-utils/issues"},"homepage":"https://github.com/audiojs/audio-buffer-utils","devDependencies":{"almost-equal":"^1.1.0","is-browser":"^2.0.1","tape":"^4.6.3"},"dependencies":{"audio-buffer":"^2.0.0","clamp":"^1.0.1","is-audio-buffer":"^1.0.0","is-browser":"^2.0.1","negative-index":"^1.0.2","typedarray-methods":"^1.0.0"},"gitHead":"006d20cc80dd3453f550cb8b05ad9a163918b287","_id":"audio-buffer-utils@4.0.3","_shasum":"81d2f5217334694dfdc60d4c29db58de7b660d31","_from":".","_npmVersion":"3.7.2","_nodeVersion":"6.2.0","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"81d2f5217334694dfdc60d4c29db58de7b660d31","size":9269,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-4.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-4.0.3.tgz"},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/audio-buffer-utils-4.0.3.tgz_1489525181331_0.42009903164580464"},"directories":{},"publish_time":1489525181553,"_hasShrinkwrap":false,"_cnpm_publish_time":1489525181553,"_cnpmcore_publish_time":"2021-12-17T02:18:31.537Z"},"4.0.2":{"name":"audio-buffer-utils","version":"4.0.2","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"node test.js","test:browser":"budo test.js"},"files":["index.js"],"repository":{"type":"git","url":"git://github.com/audiojs/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yv","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/audiojs/audio-buffer-utils/issues"},"homepage":"https://github.com/audiojs/audio-buffer-utils","devDependencies":{"almost-equal":"^1.1.0","is-browser":"^2.0.1","tape":"^4.6.3"},"dependencies":{"audio-buffer":"^2.0.0","clamp":"^1.0.1","is-audio-buffer":"^1.0.0","is-browser":"^2.0.1","negative-index":"^1.0.2","typedarray-methods":"^1.0.0"},"gitHead":"94c6af5e0eff69ae1a11051e8234bfcddf4a79f2","_id":"audio-buffer-utils@4.0.2","_shasum":"d0091aa87e947a1eb42aeb588d5cd58875a1e280","_from":".","_npmVersion":"3.7.2","_nodeVersion":"6.2.0","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"d0091aa87e947a1eb42aeb588d5cd58875a1e280","size":6037,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-4.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-4.0.2.tgz"},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/audio-buffer-utils-4.0.2.tgz_1487492242112_0.5630096897948533"},"directories":{},"publish_time":1487492242875,"_hasShrinkwrap":false,"_cnpm_publish_time":1487492242875,"_cnpmcore_publish_time":"2021-12-17T02:18:32.099Z"},"4.0.1":{"name":"audio-buffer-utils","version":"4.0.1","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"node test.js","test:browser":"budo test.js"},"files":["index.js"],"repository":{"type":"git","url":"git://github.com/jaz303/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yv","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/jaz303/audio-buffer-utils/issues"},"homepage":"https://github.com/jaz303/audio-buffer-utils","devDependencies":{"almost-equal":"^1.1.0","is-browser":"^2.0.1","tape":"^4.6.3"},"dependencies":{"audio-buffer":"^2.0.0","clamp":"^1.0.1","is-audio-buffer":"^1.0.0","is-browser":"^2.0.1","negative-index":"^1.0.2","typedarray-methods":"^1.0.0"},"gitHead":"3720170b3ef1daa27c9905ddeb6e0361a51b94bc","_id":"audio-buffer-utils@4.0.1","_shasum":"c01e93db2946602e4cf8e5b857f57ea637665a41","_from":".","_npmVersion":"3.7.2","_nodeVersion":"6.2.0","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"c01e93db2946602e4cf8e5b857f57ea637665a41","size":5789,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-4.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-4.0.1.tgz"},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/audio-buffer-utils-4.0.1.tgz_1486986793099_0.4643021016381681"},"directories":{},"publish_time":1486986795096,"_hasShrinkwrap":false,"_cnpm_publish_time":1486986795096,"_cnpmcore_publish_time":"2021-12-17T02:18:32.341Z"},"4.0.0":{"name":"audio-buffer-utils","version":"4.0.0","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"node test.js","test:browser":"budo test.js"},"files":["index.js"],"repository":{"type":"git","url":"git://github.com/jaz303/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yv","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/jaz303/audio-buffer-utils/issues"},"homepage":"https://github.com/jaz303/audio-buffer-utils","devDependencies":{"almost-equal":"^1.1.0","is-browser":"^2.0.1","tape":"^4.6.3"},"dependencies":{"audio-buffer":"^2.0.0","clamp":"^1.0.1","is-audio-buffer":"^1.0.0","is-browser":"^2.0.1","negative-index":"^1.0.2","typedarray-methods":"^1.0.0"},"gitHead":"0358f482fb43796814b98476c57411660023eac1","_id":"audio-buffer-utils@4.0.0","_shasum":"a2cf6bd863e66ba3f6eb6543d11bf1f24b822c7d","_from":".","_npmVersion":"3.7.2","_nodeVersion":"6.2.0","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"a2cf6bd863e66ba3f6eb6543d11bf1f24b822c7d","size":5776,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-4.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-4.0.0.tgz"},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/audio-buffer-utils-4.0.0.tgz_1486986493658_0.606880648760125"},"directories":{},"publish_time":1486986495622,"_hasShrinkwrap":false,"_cnpm_publish_time":1486986495622,"_cnpmcore_publish_time":"2021-12-17T02:18:32.554Z"},"3.1.2":{"name":"audio-buffer-utils","version":"3.1.2","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"node test.js","test:browser":"budo test.js"},"files":["index.js"],"repository":{"type":"git","url":"git://github.com/jaz303/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yv","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/jaz303/audio-buffer-utils/issues"},"homepage":"https://github.com/jaz303/audio-buffer-utils","devDependencies":{"is-browser":"^2.0.1","tst":"^1.3.1"},"dependencies":{"audio-buffer":"^2.0.0","is-audio-buffer":"^1.0.0","is-browser":"^2.0.1","typedarray-methods":"^1.0.0"},"gitHead":"b2bf0a9f6cf79ddcbc07454de04e4a34b6d1b07d","_id":"audio-buffer-utils@3.1.2","_shasum":"1a2bf28ca1e1ee94381a6d4497137d078ce8cb17","_from":".","_npmVersion":"3.7.2","_nodeVersion":"6.2.0","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"1a2bf28ca1e1ee94381a6d4497137d078ce8cb17","size":5038,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-3.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-3.1.2.tgz"},"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/audio-buffer-utils-3.1.2.tgz_1467833701795_0.8514035313855857"},"directories":{},"publish_time":1467833702944,"_hasShrinkwrap":false,"_cnpm_publish_time":1467833702944,"_cnpmcore_publish_time":"2021-12-17T02:18:32.774Z"},"3.1.1":{"name":"audio-buffer-utils","version":"3.1.1","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"mocha","test:browser":"beefy --index=test.html test.js"},"files":["index.js"],"repository":{"type":"git","url":"git://github.com/jaz303/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yvanow","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/jaz303/audio-buffer-utils/issues"},"homepage":"https://github.com/jaz303/audio-buffer-utils","devDependencies":{"beefy":"^2.1.5","is-browser":"^2.0.1","mocha":"^2.3.4"},"dependencies":{"audio-buffer":"^2.0.0","is-audio-buffer":"^1.0.0","is-browser":"^2.0.1"},"gitHead":"04d61183e093074d10be296d7ac1978e8d87c2fd","_id":"audio-buffer-utils@3.1.1","_shasum":"22ffd855f474c2a4eb44f64ad37eb7bd475153d9","_from":".","_npmVersion":"3.7.2","_nodeVersion":"6.0.0","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"22ffd855f474c2a4eb44f64ad37eb7bd475153d9","size":5038,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-3.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-3.1.1.tgz"},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/audio-buffer-utils-3.1.1.tgz_1462328008194_0.9522388868499547"},"directories":{},"publish_time":1462328010677,"_hasShrinkwrap":false,"_cnpm_publish_time":1462328010677,"_cnpmcore_publish_time":"2021-12-17T02:18:32.968Z"},"3.1.0":{"name":"audio-buffer-utils","version":"3.1.0","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"mocha","test:browser":"beefy --index=test.html test.js"},"files":["index.js"],"repository":{"type":"git","url":"git://github.com/jaz303/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yvanow","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/jaz303/audio-buffer-utils/issues"},"homepage":"https://github.com/jaz303/audio-buffer-utils","devDependencies":{"beefy":"^2.1.5","is-browser":"^2.0.1","mocha":"^2.3.4"},"dependencies":{"audio-buffer":"^2.0.0","is-audio-buffer":"^1.0.0","is-browser":"^2.0.1"},"gitHead":"526b5cc5b43e2783a656450d2ffdc1263ffbd0ef","_id":"audio-buffer-utils@3.1.0","_shasum":"199906af2d41e91a745ebd661bfe71e20cfa189c","_from":".","_npmVersion":"3.7.2","_nodeVersion":"6.0.0","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"199906af2d41e91a745ebd661bfe71e20cfa189c","size":3779,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-3.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-3.1.0.tgz"},"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/audio-buffer-utils-3.1.0.tgz_1462243321014_0.40931008174084127"},"directories":{},"publish_time":1462243322136,"_hasShrinkwrap":false,"_cnpm_publish_time":1462243322136,"_cnpmcore_publish_time":"2021-12-17T02:18:33.250Z"},"3.0.0":{"name":"audio-buffer-utils","version":"3.0.0","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"mocha","test:browser":"beefy --index=test.html test.js"},"files":["index.js"],"repository":{"type":"git","url":"git://github.com/jaz303/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yvanow","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/jaz303/audio-buffer-utils/issues"},"homepage":"https://github.com/jaz303/audio-buffer-utils","devDependencies":{"beefy":"^2.1.5","is-browser":"^2.0.1","mocha":"^2.3.4"},"dependencies":{"audio-buffer":"^2.0.0","is-audio-buffer":"^1.0.0","is-browser":"^2.0.1"},"gitHead":"e195130b9c77ada160050ae405320264ad02740c","_id":"audio-buffer-utils@3.0.0","_shasum":"ff39327da8ea545978fde76bab071f7dd97d0e61","_from":".","_npmVersion":"3.7.2","_nodeVersion":"6.0.0","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"ff39327da8ea545978fde76bab071f7dd97d0e61","size":4819,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-3.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-3.0.0.tgz"},"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/audio-buffer-utils-3.0.0.tgz_1462236271855_0.802377947838977"},"directories":{},"publish_time":1462236272988,"_hasShrinkwrap":false,"_cnpm_publish_time":1462236272988,"_cnpmcore_publish_time":"2021-12-17T02:18:33.536Z"},"2.0.2":{"name":"audio-buffer-utils","version":"2.0.2","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"mocha","test:browser":"beefy --index=test.html test.js"},"files":["index.js"],"repository":{"type":"git","url":"git://github.com/jaz303/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yvanow","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/jaz303/audio-buffer-utils/issues"},"homepage":"https://github.com/jaz303/audio-buffer-utils","devDependencies":{"beefy":"^2.1.5","is-browser":"^2.0.1","mocha":"^2.3.4"},"dependencies":{"audio-buffer":"^2.0.0","is-audio-buffer":"^1.0.0","is-browser":"^2.0.1"},"gitHead":"bbd830f32e6ae0905cf38f8b705ea957dff209e4","_id":"audio-buffer-utils@2.0.2","_shasum":"8ff37b57237484a1b98b64ce7b28bcb073b6f3fd","_from":".","_npmVersion":"3.7.2","_nodeVersion":"5.5.0","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"8ff37b57237484a1b98b64ce7b28bcb073b6f3fd","size":4829,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-2.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-2.0.2.tgz"},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/audio-buffer-utils-2.0.2.tgz_1459741302464_0.3891613185405731"},"directories":{},"publish_time":1459741304781,"_hasShrinkwrap":false,"_cnpm_publish_time":1459741304781,"_cnpmcore_publish_time":"2021-12-17T02:18:33.816Z"},"2.0.1":{"name":"audio-buffer-utils","version":"2.0.1","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"mocha","test:browser":"beefy --index=test.html test.js"},"files":["index.js"],"repository":{"type":"git","url":"git://github.com/jaz303/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yvanow","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/jaz303/audio-buffer-utils/issues"},"homepage":"https://github.com/jaz303/audio-buffer-utils","optionalDependencies":{"beefy":"^2.1.5"},"devDependencies":{"is-browser":"^2.0.1","mocha":"^2.3.4"},"dependencies":{"audio-buffer":"^2.0.0","is-audio-buffer":"^1.0.0","is-browser":"^2.0.1","beefy":"^2.1.5"},"gitHead":"402625ed34060782dd7bd241bb201884c997f9d4","_id":"audio-buffer-utils@2.0.1","_shasum":"416d84b1e7d3d2b816766efdea7528ec882e42e6","_from":".","_npmVersion":"3.7.0","_nodeVersion":"5.3.0","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"416d84b1e7d3d2b816766efdea7528ec882e42e6","size":4830,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-2.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-2.0.1.tgz"},"directories":{},"publish_time":1454212084217,"_hasShrinkwrap":false,"_cnpm_publish_time":1454212084217,"_cnpmcore_publish_time":"2021-12-17T02:18:34.089Z"},"2.0.0":{"name":"audio-buffer-utils","version":"2.0.0","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"mocha","test:browser":"beefy --index=test.html test.js"},"files":["index.js"],"repository":{"type":"git","url":"git://github.com/jaz303/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yvanow","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/jaz303/audio-buffer-utils/issues"},"homepage":"https://github.com/jaz303/audio-buffer-utils","optionalDependencies":{"beefy":"^2.1.5"},"devDependencies":{"is-browser":"^2.0.1","mocha":"^2.3.4"},"dependencies":{"audio-buffer":"^2.0.0","is-audio-buffer":"^1.0.0","is-browser":"^2.0.1","beefy":"^2.1.5"},"gitHead":"f4dbc8af85a7a78531ae689bf33a4f229cad65f7","_id":"audio-buffer-utils@2.0.0","_shasum":"e8f55ece282aed01ef1de61aec874981ced1f997","_from":".","_npmVersion":"3.3.12","_nodeVersion":"5.3.0","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"e8f55ece282aed01ef1de61aec874981ced1f997","size":4814,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-2.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-2.0.0.tgz"},"directories":{},"publish_time":1454095420261,"_hasShrinkwrap":false,"_cnpm_publish_time":1454095420261,"_cnpmcore_publish_time":"2021-12-17T02:18:34.313Z"},"1.1.0":{"name":"audio-buffer-utils","version":"1.1.0","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"mocha","test:browser":"beefy --index=test.html test.js"},"files":["index.js"],"repository":{"type":"git","url":"git://github.com/jaz303/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yvanow","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/jaz303/audio-buffer-utils/issues"},"homepage":"https://github.com/jaz303/audio-buffer-utils","devDependencies":{"beefy":"^2.1.5","is-browser":"^2.0.1","mocha":"^2.3.4"},"dependencies":{"audio-buffer":"^2.1.2","is-audio-buffer":"^1.0.0"},"gitHead":"d8dad2db41d7ff500c3044ff633d00465f57af61","_id":"audio-buffer-utils@1.1.0","_shasum":"7d35b0b1ca37ecdaed4c7d632411d7da758fcdaa","_from":".","_npmVersion":"3.3.12","_nodeVersion":"5.3.0","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"7d35b0b1ca37ecdaed4c7d632411d7da758fcdaa","size":4078,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-1.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-1.1.0.tgz"},"directories":{},"publish_time":1451437773032,"_hasShrinkwrap":false,"_cnpm_publish_time":1451437773032,"_cnpmcore_publish_time":"2021-12-17T02:18:34.493Z"},"1.0.0":{"name":"audio-buffer-utils","version":"1.0.0","description":"Utility functions for AudioBuffers","main":"index.js","scripts":{"test":"mocha","test:browser":"beefy --index=test.html test.js"},"files":["index.js"],"repository":{"type":"git","url":"git://github.com/jaz303/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer","web audio","audio-buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"contributors":[{"name":"Dmitry Yvanow","email":"dfcreative@gmail.com"}],"license":"ISC","bugs":{"url":"https://github.com/jaz303/audio-buffer-utils/issues"},"homepage":"https://github.com/jaz303/audio-buffer-utils","devDependencies":{"is-browser":"^2.0.1","mocha":"^2.3.4"},"dependencies":{"audio-buffer":"^2.1.2"},"gitHead":"209c6e5262bf3c698e9c4184f3edb2153846cefc","_id":"audio-buffer-utils@1.0.0","_shasum":"cc3126f55244ceadac69ec074a70af46bc841dad","_from":".","_npmVersion":"3.3.12","_nodeVersion":"5.3.0","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"cc3126f55244ceadac69ec074a70af46bc841dad","size":3956,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-1.0.0.tgz"},"directories":{},"publish_time":1451342765437,"_hasShrinkwrap":false,"_cnpm_publish_time":1451342765437,"_cnpmcore_publish_time":"2021-12-17T02:18:34.696Z"},"0.1.0":{"name":"audio-buffer-utils","version":"0.1.0","description":"Utility functions for working with Web Audio API Buffers","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git://github.com/jaz303/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"license":"ISC","bugs":{"url":"https://github.com/jaz303/audio-buffer-utils/issues"},"homepage":"https://github.com/jaz303/audio-buffer-utils","devDependencies":{"uglify-js":"^2.4.15"},"gitHead":"ba9663c77844ded9e7ac5a2fb884e1dde3b76945","_id":"audio-buffer-utils@0.1.0","_shasum":"0f7604c6a6e2abd818dd17bba86176a0a3144b4c","_from":".","_npmVersion":"2.0.0-alpha-5","_npmUser":{"name":"jaz303","email":"jason@onehackoranother.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"dist":{"shasum":"0f7604c6a6e2abd818dd17bba86176a0a3144b4c","size":1961,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-0.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-0.1.0.tgz"},"directories":{},"publish_time":1407947350041,"_hasShrinkwrap":false,"_cnpm_publish_time":1407947350041,"_cnpmcore_publish_time":"2021-12-17T02:18:34.880Z"},"0.0.2":{"name":"audio-buffer-utils","version":"0.0.2","description":"Utility functions for working with Web Audio API Buffers","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git://github.com/jaz303/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"license":"ISC","bugs":{"url":"https://github.com/jaz303/audio-buffer-utils/issues"},"homepage":"https://github.com/jaz303/audio-buffer-utils","_id":"audio-buffer-utils@0.0.2","dist":{"shasum":"988db403bf14b1a9608eea9bc7a7e4727f29d76a","size":1089,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-0.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-0.0.2.tgz"},"_from":".","_npmVersion":"1.3.21","_npmUser":{"name":"jaz303","email":"jason@onehackoranother.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"directories":{},"publish_time":1398730260832,"_hasShrinkwrap":false,"_cnpm_publish_time":1398730260832,"_cnpmcore_publish_time":"2021-12-17T02:18:35.147Z"},"0.0.1":{"name":"audio-buffer-utils","version":"0.0.1","description":"Utility functions for working with Web Audio API Buffers","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git://github.com/jaz303/audio-buffer-utils.git"},"keywords":["web","audio","api","buffer"],"author":{"name":"Jason Frame","email":"jason@onehackoranother.com","url":"http://jasonframe.co.uk"},"license":"ISC","bugs":{"url":"https://github.com/jaz303/audio-buffer-utils/issues"},"homepage":"https://github.com/jaz303/audio-buffer-utils","_id":"audio-buffer-utils@0.0.1","dist":{"shasum":"7473969d17f53f5d530d296010c02cc2eceef89f","size":1039,"noattachment":false,"key":"/audio-buffer-utils/-/audio-buffer-utils-0.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/audio-buffer-utils/download/audio-buffer-utils-0.0.1.tgz"},"_from":".","_npmVersion":"1.3.21","_npmUser":{"name":"jaz303","email":"jason@onehackoranother.com"},"maintainers":[{"name":"ahdinosaur","email":"michael.williams@enspiral.com"},{"name":"danigb","email":""},{"name":"dy","email":"155263213@qq.com"},{"name":"jamen","email":""},{"name":"jaz303","email":"jason@onehackoranother.com"}],"directories":{},"publish_time":1397842999971,"_hasShrinkwrap":false,"_cnpm_publish_time":1397842999971,"_cnpmcore_publish_time":"2021-12-17T02:18:35.413Z"}},"readme":"# audio-buffer-utils [![Build Status](https://travis-ci.org/audiojs/audio-buffer-utils.svg?branch=master)](https://travis-ci.org/audiojs/audio-buffer-utils) [![unstable](https://img.shields.io/badge/stability-unstable-green.svg)](http://github.com/badges/stability-badges) [![Greenkeeper badge](https://badges.greenkeeper.io/audiojs/audio-buffer-utils.svg)](https://greenkeeper.io/)\r\n\r\nUtility functions for [_AudioBuffers_](https://github.com/audiojs/audio-buffer) in web-audio and node. Optimized for performance.\r\n\r\n* [util.create(src, ch|opts?)](https://github.com/audiojs/audio-buffer-utils#utilcreatedatalength-optionschannels1-samplerate44100)\r\n* [util.shallow(buf)](#utilshallowbuffer)\r\n* [util.clone(buf)](#utilclonebuffer)\r\n* [util.copy(buf, dst, start?)](#utilcopyfrombuffer-tobuffer-offset0)\r\n* [util.slice(buf, start?, end?)](#utilslicebuffer-start0-end-0)\r\n* [util.subbuffer(buf, start?, end?, ch?)](#utilsubbufferbuffer-start0-end-0-channels)\r\n* [util.concat(a, b, ...)](#utilconcatbuffer1-buffer2-buffer3-buffern-)\r\n* [util.repeat(buf, n)](#utilrepeatbuffer-times)\r\n* [util.reverse(src, dst?, start?, end?)](#utilreversebuffer-target-start0-end-0)\r\n* [util.invert(src, dst?, start?, end?)](#utilinvertbuffer-target-start0-end-0)\r\n* [util.zero(buf)](#utilzerobuffer)\r\n* [util.noise(buf)](#utilnoisebuffer)\r\n* [util.equal(a, b, ...)](#utilequalbuffera-bufferb-)\r\n* [util.fill(buf, dst?, val, start?, end?)](#utilfillbuffer-target-valuevalue-i-channelvalue-start0-end-0)\r\n* [util.resize(buf, len)](#utilresizebuffer-length)\r\n* [util.pad(buf, len, val?)](#utilpadbufferlength-lengthbuffer-value0)\r\n* [util.shift(buf, off)](#utilshiftbuffer-offset)\r\n* [util.rotate(buf, off)](#utilrotatebuffer-offset)\r\n* [util.normalize(buf, dst?, start?, end?)](#utilnormalizebuffer-target-start0-end-0)\r\n* [util.removeStatic(buf, dst?, start?, end?)](#utilremovestaticbuffer-target-start0-end-0)\r\n* [util.trim(buf, lvl)](#utiltrimbuffer-threshold0)\r\n* [util.mix(a, b, amt?, off?)](#utilmixbuffera-bufferb-ratiovala-valb-i-channelval-offset0)\r\n* [util.size(buf)](#utilsizebuffer)\r\n* [util.data(buf, dst?)](#utildatabuffer-data)\r\n\r\n## Usage\r\n\r\n[![npm install audio-buffer-utils](https://nodei.co/npm/audio-buffer-utils.png?mini=true)](https://npmjs.org/package/audio-buffer-utils/)\r\n\r\n### `util.create(data|length, options|channels=1, sampleRate=44100)`\r\n\r\nCreate a new buffer from any argument.\r\nData can be a length, an array with channels' data, an other buffer or plain array. See [audio-buffer-from](https://github.com/audiojs/audio-buffer-from) module.\r\n\r\n```js\r\n//mono buffer with 100 samples\r\nlet a = util.create(100)\r\n\r\n//stereo buffer with predefined channels data\r\nlet b = util.create([Array(100).fill(0.5), Array(100).fill(0.4)])\r\n\r\n//minimal length buffer (1 sample, 1 channel)\r\nlet c = util.create()\r\n\r\n//create 2 seconds buffer with reduced sample rate\r\nlet rate = 22050\r\nlet d = util.create(2 * rate, 2, rate)\r\n```\r\n\r\n### `util.shallow(buffer)`\r\nCreate a new buffer with the same characteristics as `buffer`, contents are undefined.\r\n\r\n```js\r\n//create buffer with the same shape as `a`\r\nlet b = util.shallow(a)\r\n\r\nutil.equal(a, b) //false\r\n```\r\n\r\n### `util.clone(buffer)`\r\nCreate a new buffer with the same characteristics as `buffer`, fill it with a copy of `buffer`'s data, and return it.\r\n\r\n```js\r\n//clone buffer `a`\r\nlet b = util.clone(a)\r\n\r\nutil.equal(a, b) //true\r\n```\r\n\r\n### `util.copy(fromBuffer, toBuffer, offset=0)`\r\nCopy the data from one buffer to another, with optional offset. If length of `fromBuffer` exceeds `offset + toBuffer.length`, an error will be thrown.\r\n\r\n### `util.slice(buffer, start=0, end=-0)`\r\nCreate a new buffer by slicing the current one.\r\n\r\n### `util.subbuffer(buffer, start=0, end=-0, channels?)`\r\nCreate a new buffer by subreferencing the current one. The new buffer represents a handle for the source buffer, working on it's data. Note that it is null-context buffer, meaning that it is not bound to web audio API. To convert it to real _AudioBuffer_, use `util.slice` or `util.create`.\r\n\r\n`channels` array may apply channels mapping to pick only indicated channels from the initial buffer. See also [audio-buffer-remix](https://github.com/audiojs/audio-buffer-remix).\r\n\r\n```js\r\nvar a = util.create(100, 2)\r\nvar b = util.subbuffer(10, 90)\r\n\r\n//b references a\r\nb.getChannelData(0)[0] = 1\r\na.getChannelData(0)[10] // 1\r\n\r\n//convert b to web-audio-api buffer\r\nb = util.slice(b)\r\n\r\n//create mono-buffer from a\r\nvar c = util.subbuffer(a, [1])\r\n```\r\n\r\n### `util.concat(buffer1, [buffer2, buffer3], bufferN, ...)`\r\nCreate a new buffer by concatting buffers or list.\r\nChannels are extended to the buffer with maximum number.\r\n\r\n### `util.repeat(buffer, times)`\r\nReturn a new buffer with contents of the initial one repeated defined number of times.\r\n\r\n### `util.reverse(buffer, target?, start=0, end=-0)`\r\nReverse `buffer`. Place data to `target` buffer, if any, otherwise modify `buffer` in-place.\r\n\r\n### `util.invert(buffer, target?, start=0, end=-0)`\r\nInvert `buffer`. Place data to `target` buffer, if any, otherwise modify `buffer` in-place.\r\n\r\n### `util.zero(buffer)`\r\nZero all of `buffer`'s channel data. `buffer` is modified in-place.\r\n\r\n### `util.noise(buffer)`\r\nFill `buffer` with random data. `buffer` is modified in-place.\r\n\r\n### `util.equal(bufferA, bufferB, ...)`\r\nTest whether the content of N buffers is the same.\r\n\r\n```js\r\nlet a = util.create(1024, 2)\r\nutil.noise(a)\r\nlet b = util.clone(a)\r\nlet c = util.shallow(a)\r\nutil.copy(a, c)\r\n\r\nif (util.equal(a, b, c)) {\r\n\t//true\r\n}\r\n```\r\n\r\n### `util.fill(buffer, target?, value|(value, i, channel)=>value, start=0, end=-0)`\r\nFill `buffer` with provided function or value.\r\nPlace data to `target` buffer, if any, otherwise modify `buffer` in-place (that covers _map_ functionality).\r\nPass optional `start` and `end` indexes.\r\n\r\n```js\r\nlet frequency = 440, rate = 44100\r\n\r\n//create 2 seconds buffer\r\nlet a = util.create(2 * rate)\r\n\r\n//populate with 440hz sine wave\r\nutil.fill(a, (value, i, channel)=>Math.sin(Math.PI * 2 * frequency * i / rate))\r\n```\r\n\r\n### `util.resize(buffer, length)`\r\nReturn new buffer based on the passed one, with shortened/extended length.\r\nInitial data is whether sliced or filled with zeros. Combines `util.pad` and `util.slice`.\r\n\r\n```js\r\n//change duration to 2s\r\nlet b = util.resize(a, 2 * a.sampleRate)\r\n```\r\n\r\n### `util.pad(buffer|length, length|buffer, value=0)`\r\n### `util.padLeft(buffer, length, value=0)`\r\n### `util.padRight(buffer, length, value=0)`\r\nRight/left-pad buffer to the length, filling with value.\r\n\r\n```js\r\nlet buf = util.create(3, 1)\r\nutil.fill(buf, .2)\r\n\r\nutil.pad(buf, 5) // [.2,.2,.2, 0,0]\r\nutil.pad(5, buf) // [0,0, .2,.2,.2]\r\nutil.pad(buf, 5, .1) // [.2,.2,.2, .1,.1]\r\nutil.pad(5, buf, .1) // [.1,.1, .2,.2,.2]\r\n```\r\n\r\n### `util.shift(buffer, offset)`\r\nShift signal in the time domain by `offset` samples, filling with zeros.\r\nModify `buffer` in-place.\r\n\r\n### `util.rotate(buffer, offset)`\r\nShift signal in the time domain by `offset` samples, in circular fashion.\r\nModify `buffer` in-place.\r\n\r\n### `util.normalize(buffer, target?, start=0, end=-0)`\r\nNormalize buffer by the amplitude, bring to -1..+1 range. Channel amplitudes ratio will be preserved. You may want to remove static level beforehead, because normalization preserves zero static level. Note that it is not the same as [array-normalize](https://github.com/dy/array-noramalize).\r\nPlaces data to `target` buffer, if any, otherwise modifies `buffer` in-place.\r\n\r\n```js\r\nconst AudioBuffer = require('audio-buffer')\r\nconst util = require('audio-buffer-utils')\r\n\r\nlet buf = AudioBuffer(1, [0, 0.2, 0, -0.4]);\r\nutil.normalize(buf);\r\nbuf.getChannelData(0) // [0, .5, 0, -1]\r\n```\r\n\r\n### `util.removeStatic(buffer, target?, start=0, end=-0)`\r\nRemove DC (Direct Current) offset from the signal, i.e. remove static level, that is bring mean to zero. DC offset will be reduced for every channel independently.\r\n\r\n```js\r\nvar a = AudioBuffer(2, [.5,.7,.3,.5])\r\n\r\nutil.removeStatic(a)\r\n\r\na.getChannelData(0) // [-.1, .1]\r\na.getChannelData(1) // [-.1, .1]\r\n```\r\n\r\n### `util.trim(buffer, threshold=0)`\r\n### `util.trimLeft(buffer, threshold=0)`\r\n### `util.trimRight(buffer, threshold=0)`\r\n\r\nCreate buffer with trimmed zeros from the start and/or end, by the threshold amplitude.\r\n\r\n### `util.mix(bufferA, bufferB, ratio|(valA, valB, i, channel)=>val?, offset=0)`\r\nMix second buffer into the first one. Pass optional weight value or mixing function.\r\n\r\n### `util.size(buffer)`\r\nReturn buffer size, in bytes. Use [pretty-bytes](https://npmjs.org/package/pretty-bytes) package to format bytes to a string, if needed.\r\n\r\n### `util.data(buffer, data?)`\r\nGet channels' data in array. Pass existing array to transfer the data to it.\r\nUseful in audio-workers to transfer buffer to output.\r\n\r\n```js\r\nlet a = util.create(3, 2)\r\n\r\nlet audioData = util.data(a) // [[0,0,0], [0,0,0]]\r\n```\r\n\r\n## Related\r\n\r\n> [audio-buffer](https://github.com/audiojs/audio-buffer) — audio data container, both for node/browser.<br/>\r\n> [audio-buffer-list](https://github.com/audiojs/audio-buffer-list) — linked audio buffers sequence structure<br/>\r\n> [audio](https://github.com/audiojs/audio) — class for high-level audio manipulations, comprising the functionality of above mentioned.\r\n> [ciseaux](https://github.com/mohayonao/ciseaux)\r\n\r\n## Credits\r\n\r\nThanks to [**@jaz303**](https://github.com/jaz303/) for [the initial idea](https://github.com/jaz303/audio-buffer-utils) and collaboration.\r\n","_attachments":{},"homepage":"https://github.com/audiojs/audio-buffer-utils","bugs":{"url":"https://github.com/audiojs/audio-buffer-utils/issues"},"license":"ISC"}