User:David.humphrey/Audio Data API 2: Difference between revisions

Line 167: Line 167:


<pre>
<pre>
// Create a new audio stream for writing
<audio id="a1"
var aout = new Audio();
      src="song.ogg"
aout.mozSetup(2, 44100, 1);
      onloadedmetadata="loadedMetadata(event);"
      onaudiowritten="audioWritten(event);"
      controls="controls">
</audio>
<script>
var a1 = document.getElementById('a1'),
    a2 = new Audio(),


function audioWritten(event){
function loadedMetadata(event) {
   samples = event.mozFrameBuffer;
   // Mute a1 audio.
  a1.volume = 0;
  // Setup a2 to be identical to a1, and play through there.
  a2.mozSetup(event.mozChannels, event.mozRate, 1);


  // Do any filtering, signal processing, etc.
}
  for (var i=0, slen=samples.length; i < slen; i++){
    process(samples[i]);
  }


   aout.mozWriteAudio(samples);
function audioWritten(event) {
   // Write the current frame to a2
  a2.mozWriteAudio(event.mozFrameBuffer);
}
}
</script>
</pre>
</pre>


Confirmed users
656

edits