/XSound

Web Audio API Library for Synthesizer, Effects, Visualization, Multi-Track Recording, Audio Streaming, Visual Audio Sprite ...

Primary LanguageJavaScriptMIT LicenseMIT

XSound

Node.js CI node-current License: MIT npm David Dev jsDelivr

Web Audio API Library for Synthesizer, Effects, Visualization, Multi-Track Recording, Audio Streaming, Visual Audio Sprite ... etc

Overview

XSound is Multifunctional Library for Web Audio API.
In concrete, XSound may be useful to implement the following features.

  • Create Sound
  • Play the One-Shot Audio
  • Play the Audio
  • Play the Media
  • Streaming (by WebRTC)
  • MIDI (by Web MIDI API)
  • MML (Music Macro Language)
  • Effectors (Compressor / Wah / Equalizer / Tremolo / Phaser / Chorus / Delay / Reverb ... etc)
  • Visualization (Overview in Time Domain / Time Domain / Spectrum)
  • Multi-Track Recording (Create WAVE file)
  • Session (by WebSocket)
  • Audio Streaming
  • Visual Audio Sprite

XSound don't depend on other libraries or frameworks (For example, jQuery, React).

Supported Browsers

Supported Browsers

Getting Started

X('oscillator').setup(true).ready().start(440);

Demo

The application that uses XSound is in the following URLs.

Now, I'm creating website for Web Audio API. Please refer to the following site for understanding API Documentation.

Playground

Playground

Installation

$ npm install --save xsound

Usage

In the case of using CDN,

<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/xsound@latest/build/xsound.min.js"></script>

In the case of using ESModules for SSR ... etc,

import { XSound, X } from 'xsound';

Setup

Use Webpack Dev Server

$ git clone git@github.com:Korilakkuma/XSound.git
$ cd XSound
$ npm install
$ npm run build
$ npm run dev
$ open http://localhost:8080/playground/

Use Docker

$ git clone git@github.com:Korilakkuma/XSound.git
$ cd XSound
$ npm install
$ npm run watch
$ docker-compose up -d --build
$ open http://localhost:8080/playground/

API Documentation

Pickups

License

Released under the MIT license