Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/lukehorvat/web-audio-oscillators

A collection of Web Audio API custom oscillators.
https://github.com/lukehorvat/web-audio-oscillators

audiocontext oscillatornode oscillators periodicwave web-audio

Last synced: about 1 month ago
JSON representation

A collection of Web Audio API custom oscillators.

Awesome Lists containing this project

README

        

# web-audio-oscillators [![npm version](https://img.shields.io/npm/v/web-audio-oscillators.svg?style=flat-square)](https://www.npmjs.com/package/web-audio-oscillators)

A collection of [Web Audio API](https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API) custom oscillators.

Are you after a nice organ or bass sound? Look no further!

An online demo of all oscillators included in this package can be found [here](https://oscillator.js.org).

## Installation

Install the package via npm:

```sh
npm install web-audio-oscillators
```

## Usage

For example, to create an [OscillatorNode](https://developer.mozilla.org/en-US/docs/Web/API/OscillatorNode) that sounds like an organ:

```js
import { customOscillators } from 'web-audio-oscillators';

const context = new AudioContext();
const oscillator = customOscillators.organ(context);
oscillator.frequency.value = 220;
oscillator.connect(context.destination);
oscillator.start();
```

All custom oscillators provided by this package:

- `sine`
- `square`
- `square2`
- `sawtooth`
- `triangle`
- `triangle2`
- `chiptune`
- `organ`
- `organ2`
- `organ3`
- `organ4`
- `organ5`
- `bass`
- `bass2`
- `bass3`
- `bass4`
- `brass`
- `brass2`
- `aah`
- `ooh`
- `eeh`
- `buzz`
- `buzz2`
- `dissonance`

## Contributing

Pull requests are most welcome. I'd like to expand this collection to cover more musical use cases!