Permalink
Browse files

removed riffwave.js

  • Loading branch information...
1 parent 8be083f commit 4e3d15d8c0ad9a2d1acdecbce30153afbab67ccc @tmatth tmatth committed Mar 6, 2012
Showing with 2 additions and 121 deletions.
  1. +2 −1 index.html
  2. +0 −120 riffwave.js
View
@@ -15,7 +15,8 @@
</style>
<script type="text/javascript" src="jquery-1.7.1.min.js"></script>
<script type="text/javascript" src="jquery-ui-1.8.18.custom.min.js"></script>
- <script type="text/javascript" src="riffwave.js"></script>
+ <script src="audiolib.min.js"></script>
+ <script type="text/javascript" src="audio_callback.js"></script>
<script type="text/javascript" src="metronome.js">
</script>
</head>
View
@@ -1,120 +0,0 @@
-/*
- * RIFFWAVE.js v0.02 - Audio encoder for HTML5 <audio> elements.
- * Copyright (C) 2011 Pedro Ladaria <pedro.ladaria at Gmail dot com>
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * version 2 as published by the Free Software Foundation.
- * The full license is available at http://www.gnu.org/licenses/gpl.html
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- *
- * Changelog:
- *
- * 0.01 - First release
- * 0.02 - New faster base64 encoding
- *
- */
-
-var FastBase64 = {
-
- chars: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",
- encLookup: [],
-
- Init: function() {
- for (var i=0; i<4096; i++) {
- this.encLookup[i] = this.chars[i >> 6] + this.chars[i & 0x3F];
- }
- },
-
- Encode: function(src) {
- var len = src.length;
- var dst = '';
- var i = 0;
- while (len > 2) {
- n = (src[i] << 16) | (src[i+1]<<8) | src[i+2];
- dst+= this.encLookup[n >> 12] + this.encLookup[n & 0xFFF];
- len-= 3;
- i+= 3;
- }
- if (len > 0) {
- var n1= (src[i] & 0xFC) >> 2;
- var n2= (src[i] & 0x03) << 4;
- if (len > 1) n2 |= (src[++i] & 0xF0) >> 4;
- dst+= this.chars[n1];
- dst+= this.chars[n2];
- if (len == 2) {
- var n3= (src[i++] & 0x0F) << 2;
- n3 |= (src[i] & 0xC0) >> 6;
- dst+= this.chars[n3];
- }
- if (len == 1) dst+= '=';
- dst+= '=';
- }
- return dst;
- } // end Encode
-
-}
-
-FastBase64.Init();
-
-var RIFFWAVE = function(data) {
-
- this.data = []; // Byte array containing audio samples
- this.wav = []; // Array containing the generated wave file
- this.dataURI = ''; // http://en.wikipedia.org/wiki/Data_URI_scheme
-
- this.header = { // OFFS SIZE NOTES
- chunkId : [0x52,0x49,0x46,0x46], // 0 4 "RIFF" = 0x52494646
- chunkSize : 0, // 4 4 36+SubChunk2Size = 4+(8+SubChunk1Size)+(8+SubChunk2Size)
- format : [0x57,0x41,0x56,0x45], // 8 4 "WAVE" = 0x57415645
- subChunk1Id : [0x66,0x6d,0x74,0x20], // 12 4 "fmt " = 0x666d7420
- subChunk1Size: 16, // 16 4 16 for PCM
- audioFormat : 1, // 20 2 PCM = 1
- numChannels : 1, // 22 2 Mono = 1, Stereo = 2, etc.
- sampleRate : 8000, // 24 4 8000, 44100, etc
- byteRate : 0, // 28 4 SampleRate*NumChannels*BitsPerSample/8
- blockAlign : 0, // 32 2 NumChannels*BitsPerSample/8
- bitsPerSample: 8, // 34 2 8 bits = 8, 16 bits = 16, etc...
- subChunk2Id : [0x64,0x61,0x74,0x61], // 36 4 "data" = 0x64617461
- subChunk2Size: 0 // 40 4 data size = NumSamples*NumChannels*BitsPerSample/8
- };
-
- function u32ToArray(i) { return [i&0xFF, (i>>8)&0xFF, (i>>16)&0xFF, (i>>24)&0xFF]; }
-
- function u16ToArray(i) { return [i&0xFF, (i>>8)&0xFF]; }
-
- this.Make = function(data) {
- if (data instanceof Array) this.data = data;
- this.header.byteRate = (this.header.sampleRate * this.header.numChannels * this.header.bitsPerSample) >> 3;
- this.header.blockAlign = (this.header.numChannels * this.header.bitsPerSample) >> 3;
- this.header.subChunk2Size = this.data.length;
- this.header.chunkSize = 36 + this.header.subChunk2Size;
-
- this.wav = this.header.chunkId.concat(
- u32ToArray(this.header.chunkSize),
- this.header.format,
- this.header.subChunk1Id,
- u32ToArray(this.header.subChunk1Size),
- u16ToArray(this.header.audioFormat),
- u16ToArray(this.header.numChannels),
- u32ToArray(this.header.sampleRate),
- u32ToArray(this.header.byteRate),
- u16ToArray(this.header.blockAlign),
- u16ToArray(this.header.bitsPerSample),
- this.header.subChunk2Id,
- u32ToArray(this.header.subChunk2Size),
- this.data
- );
- this.dataURI = 'data:audio/wav;base64,'+FastBase64.Encode(this.wav);
- };
-
- if (data instanceof Array) this.Make(data);
-
-}; // end RIFFWAVE
-
-

0 comments on commit 4e3d15d

Please sign in to comment.