JSPM

  • Created
  • Published
  • Downloads 19
  • Score
    100M100P100Q47195F
  • License MIT

Web Audio Library

Package Exports

  • waud.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (waud.js) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

waud logo

Web Audio Library with HTML5 audio fallback.

Build Status npm version

Installation

npm install waud.js

For haxe users:

haxelib install waud

API Documentation

API Reference

Example:

var snd = new WaudSound("assets/loop.mp3", { autoplay: false, loop: true, volume: 0.5, onload: _playBgSound });

Audio Sprite

Use waudsprite to generate audio sprite.

var audSprite = new WaudSound("assets/sprite.json");
audSprite.play("glass");

Issues

Found any bug? Please create a new issue.

Demo

Usage

JavaScript
Waud.init();
Waud.enableTouchUnlock(touchUnlock);
Waud.autoMute();

var _bgSnd = new WaudSound("assets/loop.mp3", {
    "autoplay": false, "loop":true, "volume": 0.5, "onload": _playBgSound
});

var snd2 = new WaudSound("assets/sound1.wav", {
    "autoplay": false,
    "loop":true,
    "onload": function (snd) { snd.play(); },
    "onend": function (snd) { console.log("ended"); },
    "onerror": function (snd) { console.log("error"); }
});

//Touch unlock event for iOS devices
function touchUnlock() {
    if (!_bgSnd.isPlaying()) _bgSnd.play();
}

function _playBgSound(snd) {
    if (!snd.isPlaying()) snd.play();
}
Haxe
class Main {

    var _bgSnd:IWaudSound;
    var _snd2:IWaudSound;

    public function new() {
        Waud.init();
        Waud.enableTouchUnlock(touchUnlock);
        Waud.autoMute();
        
        _bgSnd = new WaudSound("assets/loop.mp3", { autoplay: false, loop: true, volume: 0.5, onload: _playBgSound });
        _snd2 = new WaudSound("assets/sound1.wav", {
            autoplay: false,
            loop: false,
            onload: function (snd) { snd.play(); },
            onend: function (snd) { trace("ended"); },
            onerror: function (snd) { trace("error"); }
        });
    }
    
    //Touch unlock event for iOS devices
    function touchUnlock() {
        if (!_bgSnd.isPlaying()) _bgSnd.play();
    }
    
    function _playBgSound(snd:IWaudSound) {
        if (!snd.isPlaying()) snd.play();
    }
    
    static function main() {
        new Main();
    }
}

Licensing Information

MIT license

This content is released under the MIT License.