n@1090: // Decode and perform WAVE file byte level manipulation n@1090: n@1090: find_subarray = function(arr,subarr) { n@1090: var arr_length = arr.length; n@1090: var subarr_length = subarr.length; n@1090: var last_check_index = arr_length - subarr_length; n@1090: n@1090: positionLoop: n@1090: for (var i=0; i <= last_check_index; i++) n@1090: { n@1090: for (var j=0; j< subarr_length; j++) n@1090: { n@1090: if (arr[i + j] !== subarr[j]) { n@1090: continue positionLoop; n@1090: } n@1090: } n@1090: return i; n@1090: } n@1090: return -1; n@1090: }; n@1090: n@1090: function convertToInteger(arr) { n@1090: var value = 0; n@1090: for (var i=0; i= channels) { n@1090: channel_index = 0; n@1090: dst_index++; n@1090: } n@1090: } n@1090: } n@1090: n@1090: function integerConvert(srcView,dstView,srcBytes) n@1090: { n@1090: //Convert integers of a Uint8Array of certain byte length into a Float32Array n@1090: var number = dstView.length; n@1090: var outBits = srcBytes*8; n@1090: var endShift = 32 - outBits; n@1090: if (srcView.length != dstView.length*srcBytes) n@1090: { n@1090: return -1; n@1090: } n@1090: for (var n=0; n