Skip to content

hundredrabbits/Pilot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pilot

Pilot is a UDP synthesizer designed to be controlled externally. It was created as a companion application to the livecoding environment ORCA.

Install & Run

You can download builds for OSX, Windows and Linux, or if you wish to build it yourself, follow these steps:

git clone https://github.com/hundredrabbits/Pilot.git
cd Pilot/desktop/
npm install
npm start

Commands

Pilot has 16 voices, and 8 effects. Commands can be entered directly with the input bar, or through UDP via the port 49161. You can send multiple commands at once by using the ; character. For example, 03C;13E will play a C3 and E3 chord.

Channel

Play

The Play commands allows you to play synth notes.

Command Channel Octave Note Velocity Length
04C 0 4 C 64 1/16
04Cf 0 4 C 127 1/16
04Cff 0 4 C 127 1bar

Settings

The Settings commands allow you to change the sound of the synth. The settings command format is a channel value between 0-G, a 3 characters long name, followed by four values between 0-G. The possible waveforms are si, 2i, 4i, 8i, tr, 2r, 4r, 8r, sq, 2q, 4q 8q, sw, 2w, 4w and 8w.

Command Channel Name Info
0ENV056f 0 Envelope Set Attack:0.00, Decay:0.33, Sustain:0.40 and Release:1.00
1OSCsisq 1 Oscilloscope Set Osc1:Sine, Osc2:Square

Global

Effects

The Effects are applied to all channels. The effect command format is a 3 characters long name, followed by one value between 0-G for wet and depth.

Command Channel Operation Info
BITff All Bitcrusher ..
DISff All Distortion ..
WAHff All AutoWah ..
CHEff All Chebyshev ..
FEEff All Feedback ..
DELff All Ping Pong Delay ..
TREff All Tremolo ..
REVff All Reverb ..
PHAff All Pashor ..
VIBff All Vibrato ..
CHOff All Chorus ..
STEff All StereoWidener ..
EQUff All EQ3 ..
COMff All Compressor ..
VOLff All Volume ..
LIMff All Limiter ..

Masters

TODO Add the ability to change the mastering effects like compressor and volume. Coming soon!

Special

  • bpm140, sets the BPM to 140. This command is designed to apply to effects like feedback.
  • renv, randomizes envelopes.
  • rosc, randomizes oscillators.
  • refx, randomizes effects.
  • reset, reset all.

Record

Press cmd/ctrl+r to record, and press it again to stop.

Convert OGG to MP3

Just use ffmpeg.

~/Documents/ffmpeg -i last.{ogg,mp3}  

Extras

  • This application supports the Ecosystem Theme.
  • Support this project through Patreon.
  • See the License file for license rights and limitations (MIT).
  • Pull Requests are welcome!