“Envelope Follower to MIDI CC” is a Max/MSP patch and stand-alone application for converting audio files into MIDI CC messages in real-time. Just load an audio file, play it, and you’ll be sending MIDI CC data based upon the amplitude envelope of the audio file. You have controls over MIDI data scaling, sampling rate, audio playback speed, and strict playback duration for mapping projects.
The impetus for the tool comes from not being satisfied with available options to convert audio amplitude into MIDI data for Digital Audio Workstation mapping projects. As a teacher, I wanted to create a resource to enable student mapping that leverages their own digital tools.
I made the software available as a repository on github. You don’t need to Max/MSP to run; I made a basic stand-alone application as well and the link is included on github.
If you dig the free software, please listen, share, and follow my music on Spotify.
Chromatic Shift is an audio plugin (AU and VST3) that uses three interpolating delays to pitch shift audio.
The range of the plugin is two octaves below and two octaves above the original audio.
A window delay (5ms to 50ms set outside playback) changes audio quality at more extreme settings. Default is 20ms.
Chromatic Shift was built using the JUCE Framework (C++).
Download the VST/AU Plugin.
Dimension Chorus is a VST plugin modeled after the Roland Dimension D® chorus. The effect includes a shared LFO (with phase flipped on opposite channel). The dimension knob controls a mix of inverted, high-pass filtered signal, which is sent to its opposite channel further spreading the stereo source.
Download the VST/AU plugin.
Installation:
For Mac OS, go (Cmd-G) to ~/Library/Audio/Plug-ins to see your “Component” folder (for AU plugins) or “VST” folder (for VST plugins). Move the plugin file to the appropriate folder. You may also go to /Libary/Audio/Plug-ins too. Either place can be used to install plugins. Most DAWs will scan and recognize both locations.
If you dig the free software, please follow my music.
Beat Repeater is a VST and AU stereo audio plugin that manipulates the wet, dry, and feedback gains of a simple delay line. When on, the plugin cuts off the input to the delay, cuts the dry output signal, and increases the feedback to 100%; in short, the sound “stutters” or repeats the beat according to a BPM setting selected by the user. An additional automate button lets the plugin randomly select beat divisions for a further glitchy breakdown of the sound. User parameters control left and right channels separately. Beat Repeater was built using the JUCE Framework (C++).
Download the VST/AU Plugin.
If you dig the free software, please follow my music.
Mixer.* is a Max/MSP package for audio mapping projects. The package contains basic audio mixer objects, like channel strips, eqs, limiters, and aux sends. Mixer.* provides GUI, modular design, and pattr binding for smooth integration into your Max/MSP workflow.
To get started with Mixer.*, place the mixer folder inside your Max > packages directory. Then restart Max. Inside a Max window, simply create a new object, start typing “mixer” and let autocomplete help you do the rest. You may also type shift-M to quickly access any mixer. object as a helpful bpatcher.
Download the Mixer.* Max package.
I also made this package a repository on github.
If you dig the free software, please listen and follow my music on Spotify.
Korgnano is a software implementation of the Korg nanoKontrol USB controller. The object connects your hardware nanoKontrol to Max and automatically ports the data to korgnano.inputmenu objects, or specially named receive objects that you can create yourself. (e.g. receive scene1_ch9_btn2)
Download. (version 0.0.1, updated 12/08/2015.)
Read my blogpost on the Korg Nano Max package.
jpb.mod is a Max 6 package with ready-made data modification modules. These modules address each of the five data modification types (interpolate, thin, offset, scale, smooth [itoss]). jpb.mod modules handle the modification of a one-dimensional data stream. Rapid prototyping is one of the core purposes of the jpb.mod package library. You may find the jpb.mod.scale object especially helpful for non-linear scaling.
Download. (version 0.0.7, updated 07/02/2017.)
Previous Version. (version 0.0.6, updated 06/22/2016.)
Read the paper on jpb.mod.
simpleKinect is an application for sending data from the Microsoft Kinect to any OSC-enabled application. The application attempts to improve upon similar software by offering more openni features and more user control.
simpleKinect Features
- Auto-calibration.
- Specify OSC output IP and Port in real time.
- Send CoM (Center of Mass) coordinate of all users inside the space, regardless of skeleton calibration.
- Send skeleton data (single user), on a joint-by-joint basis, as specified by the user.
- Manually switch between users for skeleton tracking.
- Individually select between three joint modes (world, screen, and body) for sending data.
- Individually determine the OSC output url for any joint.
- Save/load application settings.
- Send distances between joints (sent in millimeters). [default is on]
Download simpleKinect.
simpleKinect FAQ page
Projects utilizing simpleKinect
Casting. Electronic composition for solo performer with the Microsoft Kinect and Kyma.