JavaScript GLSL Vue HTML CSS
Clone or download
2xAA Merge pull request #173 from 2xAA/2.0-drawloop
Add Module2D 'scratchpad' canvas for proper opacity and blending
Latest commit b20d160 Jul 12, 2018

README.md

modV

modV is a modular audio visualisation environment written in JavaScript and runs in Google Chrome.

All documentation so far is available in this repo's Wiki.

Flattr this

2.0: Build Status

Important version information

modV has three versions.
1.0 is found in the master branch.
1.5 is found in the 1.5 branch.
2.0 - the only version with active development, can be found in the 2.0 branch.

modV is still active, but only on the 2.0 branch.
When 2.0 reaches maturity, 1.0 will be archived onto its own branch and 2.0 will become the master branch.
Releases will start upon 2.0's move to the master branch.

There is no support for 1.0. 1.5 will be bugfixed upon request.

Sample images

Requirements

Build Setup

# clone and move into directory
git clone git@github.com:2xAA/modV.git ./modV
cd modV

# install dependencies
yarn

# serve with hot reload at localhost:8080
yarn run dev

# build for production with minification
yarn run build

Notes on Building

modV, by default, builds a standalone application using NWJS.
Your standalone application should appear in ./nwjs/build/modV and the standard site version will appear in ./dist.

By default the build script will build standalone apps for OS X 64-bit and Windows 64-bit.
For more information, please read the nw-builder documentation.

To build standalone applications for Windows on macOS an Linux platforms, make sure Wine is installed and accessable via the commandline.

OS Audio Specifics

Windows

  • You must run either Command Prompt or PowerShell with administrative privileges for the media folder to be symlinked.
    To do this, find either cmd or PowerShell in your start menu, right click and select 'Run as administrator.'.
  • VB Cable is recommended to route audio to the browser, download that here

macOS

  • SoundFlower is recommended to route audio to the browser, download that here

Linux

  • One way of routing audio to the browser is using Pulse Audio's Volume Control package. This tutorial shows how to setup the Input Devices to show your monitoring. When you start the modV application, your browser should appear as a recording device in the "Recording" tab and you should not have to do any extra to make it work. Browser input device in pavucontrol

Contribution

modV is open to contribution. Currently the project needs (in order of priority):

  • full re-write for ES6
  • a better UI
  • work on the mediaManager and loading/saving Modules

If you can help with any of these, please submit a PR and/or issue.

Acknowledgements

Thank you to:

  • Hugh Rawlinson, Nevo Segal and Jakub Fiala for the incredible audio analysis engine, meyda
  • Dario Villanueva for his advice and introduction to live visuals which inspired this whole project
  • Lebedev Konstantin for Sortable
  • Charles J. Cliffe for BeatDetektor
  • mrdoob for THREE.js

Project repos