Repository navigation
Brocessor HTTP API
For general requests use "target" : "global" or omit "target" entry altogether.
{ "target" : "global", "command" : "play" }
Fixes all possible issues.
{ "target" : "global", "command" : "refresh" }
"command" : either "open" or "load"; A "path" to .bro file should be specified.
{ "target" : "global", "command" : "load", "path" : "D:/pathces/pad.bro" }
"value" is expected to be a positive integer that could fit into 30 bits.
{ "target" : "global", "command" : "bpm", "value" : "240" }
Use this N times in case the default ASIO driver (and N-1 following drivers) suck balls.
{ "target" : "global", "command" : "asio_switch" }
#Device-specific requests
For device handling use "target" : device_type. Supported device types:
- Synth
- Transform
- Mixer
- Filter
- Handle
- Delay
Set "index" to specify the target device. Indices are 0-based, default "index" is 0. If no specified device is present, request is silently ignored.
For every control you want to set, add an entry to "state" array:
{ "control" : "control_name", "value" : "value" }
##Synth
- "freq" - synth frequency. Expects frequency value.
- "amp" - synth amplitude. Expects amplitude value.
- "function" - waveform function. Expects expression.
{ "target" : "synth", "index" : "3", "state" : [ { "control" : "amp", "value" : "0.5" }, { "control" : "freq", "value" : "0.15" }, { "control" : "function", "value" : "sin(x^2)" } ] }
##Transform
- "amp_in" - input amplitude ( amplitude value ).
- "amp_out" - output amplitude ( amplitude value ).
- "function" - transform function ( expression ).
##Filter
- "function" - filter frequency response function ( expression ).
##Mixer Instead of "control", specify "in" and "out" (integers) to pick a volume knob:
{ "target" : "mixer", "index" : "2", "state" : [ { "in" : "1", "out" : "0", "value" : "0.5" }, { "in" : "2", "out" : "2", "value" : "-2.0" }, ] }
Both "in" and "out" can be omitted and will default to 0.