Butterchurn is a WebGL implementation of the Milkdrop Visualizer
Switch branches/tags
Nothing to show
Clone or download
Latest commit 0a07191 Nov 17, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
config remove lodash May 30, 2018
examples Add lodash import to demo page (#1) Jun 8, 2018
src match nseel memcpy return value Nov 17, 2018
.eslintrc initial code commit Apr 23, 2018
.gitignore initial code commit Apr 23, 2018
LICENSE initial code commit Apr 23, 2018
README.md Add pasteur integration to README (#12) Sep 30, 2018
package.json bump to version 2.6.1 Nov 17, 2018
yarn.lock remove lodash May 30, 2018

README.md

Butterchurn

Butterchurn is a WebGL implementation of the Milkdrop Visualizer

Try it out

Screenshot of Butterchurn

Usage

Installation

With yarn or npm installed, run

$ yarn add butterchurn butterchurn-presets
or
$ npm install butterchurn butterchurn-presets

Create a visualizer

import butterchurn from 'butterchurn';
import butterchurnPresets from 'butterchurn-presets';

// initialize audioContext and get canvas

const visualizer = butterchurn.createVisualizer(audioContext, canvas, {
  width: 800,
  height: 600
});

// get audioNode from audio source or microphone

visualizer.connectAudio(audioNode);

// load a preset

const presets = butterchurnPresets.getPresets();
const preset = presets['Flexi, martin + geiss - dedicated to the sherwin maxawow'];

visualizer.loadPreset(preset, 0.0); // 2nd argument is the number of seconds to blend presets

// resize visualizer

visualizer.setRendererSize(1600, 1200);

// render a frame

visualizer.render();

Browser Support

Butterchurn requires the browser support WebGL 2.

You can test for support using our minimal isSupported script:

import isButterchurnSupported from "butterchurn/lib/isSupported.min";

if (isButterchurnSupported()) {
  // Load and use butterchurn
}

Integrations

Thanks

License

This project is licensed under the MIT License - see the LICENSE file for details