Narcissistic Pickle Meister

    beepbox

    1.0.0 • Public • Published

    Beepbox

    A simple library for playing beepbox songs. This library is a more polished version of what I made for my 2018 JS13kGames entry!

    This is an open source project under the MIT license, see LICENSE.md for additional information.

    Usage

    Create an audio context and load a song

    import Audio from 'beepbox';
    import song from './song.json';
    const player = new Audio(song);

    Play a beepbox song (once)

    /**
     * Play the loaded clip once.
     *
     * @returns {Object} 
     *   The generic node from Audio.generateNode() for this sequence.
     */
    player.play();

    Loop a beepbox song (infinitely)

    /**
     * Play the loaded clip infinitely.
     *
     * @returns {Object} 
     *   The generic node from Audio.generateNode() for this sequence.
     */
    player.loop();

    Play a single note

    /**
     * Play a single note with the given params.
     *
     * @param {Number} freq 
     *   The note frequency to play.
     * @param {Number} len 
     *   The duration to play the note (seconds).
     * @param {Number} off 
     *   The time offset to play the note (seconds).
     * @param {String} type 
     *   The OscillatorNode type to use; https://developer.mozilla.org/en-US/docs/Web/API/OscillatorNode/type
     * @param {Number} gain 
     *   The gain (volume) to play the note at (0.0 - 1.0).
     *
     * @returns {Object} 
     *   The generic node from Audio.generateNode() for this sequence.
     */
    player.note(freq, len, off, type, gain);

    Example

    'use strict';
     
    import Audio from 'beepbox';
    import song from './song.json';
     
    const player = new Audio(song);
    player.play();

    Contact

    Keywords

    none

    Install

    npm i beepbox

    DownloadsWeekly Downloads

    4

    Version

    1.0.0

    License

    MIT

    Unpacked Size

    57.9 kB

    Total Files

    15

    Last publish

    Collaborators

    • zackurben