Notwithstanding Precautions, Misadventure

    neat-audio

    0.2.1 • Public • Published

    neatAudio

    A simple, neat promise wrapper for the web Audio Context API, designed for use with browserify. Get and play sounds from urls with ease.

    Usage

    You'll need to use a Promise pattern with neatAudio, since it returns promises.

    Fetch a Sound

    var neatAudio = require('neat-audio');
     
    // Init neatAudio
    neatAudio.init(window);
     
    // Load the sound buffers into variable
    neatAudio.fetchSound('willhelm_scream.wav').then(function(soundBuffer) {
      var scream = soundBuffer;
     
      // Play the sound
      neatAudio.playSound(scream);
    }).catch(function(err) {
      console.error('Could not fetch sound!', err);
    });

    Fetch Multiple Sounds

    var neatAudio = require('neat-audio');
    var Promise = require('es6-promise'); // or some other promise lib/polyfill
     
    // Init neatAudio
    neatAudio.init(window);
     
    // Declare some variables to look after your sound buffers
    var sounds = {
      click: null,
      shick: null,
      boom: null
    };
     
    // Load the sound buffers into local variables
    Promise.all([
      neatAudio.fetchSound('click.wav'),
      neatAudio.fetchSound('shick.wav'),
      neatAudio.fetchSound('boom.wav')
    ]).then(function(values) {
      sounds.click = values[0];
      sounds.shick = values[1];
      sounds.boom = values[2];
     
      // Playing any of them
      neatAudio.playSound(sounds.boom);
    });

    Todo

    • Modify project to show browserify bundling
    • Test with browser window
    • Add tests for getting and playing sounds

    Install

    npm i neat-audio

    DownloadsWeekly Downloads

    2

    Version

    0.2.1

    License

    MIT

    Last publish

    Collaborators

    • iqrow