Here I describe what Cakewalk Control Surface API (the old one) allows plug-ins to do. Already implemented functions are marked.
Apart from some additions in the recently published API (there are some, especially for PC), a plug-in can do only something from that list. That is true for any plug-in, not only for AZ Controller (till there are some undocumented features...). That means not everything is possible, for example it is not possible to feed some MIDI into SONAR, control FXes inside FX chains, etc.
- Receive short MIDI events. Support CC14, RPNs and NRPNs.
- Receive long MIDI events (SysEx). Dynamic parsing implemented.
- Mask whole MIDI channel(s).
- Mask specific short MIDI events.
- Send MIDI events back to the controller. Inclusive parametric SysEx
- Emulate normal (PC Keyboards) keys, send navigation events and spinning.
- Execute SONAR Commands
- See the Project name
- Get (and use) Markers information (GoTo Marker X, display current marker name)
- Get and lock ACT Mapping. Switch ACT Learn mode.
- Display some information in Control Bar
- For parameters:
- Strip types: Track, Bus, Master, MIDI Send, Rack
- Touch function: Automatic, Manual, Timed
- Filter sections (EQ), PC is somehow exposed there. SONAR side is buggy, so the functionality is limited
- General strip parameters: Vol, Pan, Mute, Solo, Archive, Rec. arm, Vol. trim, Phase, Interleave, Input echo, Input, Output, Automatable mute
- MIDI tracks: Bank, Patch, Key offset, Velocity offset,
- Sends: Output, Enable, Mute, Vol, Pan, Pre/Post
- FX control and available parameters list
- Surround section
- ACT parameters
- Automation Read/Arm for parameter
- Snapshot parameter
- Switch context (focus, open and close UIs for FXes and Synth), move context (previous/next)
- Select current strip
- Not sure for what it is good: Bus type, Track exists, Layers
- Show/hide plug-in UI
- WAI
- Transport:
- Get transport state: Audio, Rec, Play, Stop, Scrub
- Get transport conditions: Rec automation, Loop, Autopunch
- Toggle transport: Audio, Rec, Play, Scrub, Rec auto., Loop, Punch
- Move position for: Cursor, Loop and Punch
- VU Meters
- Selecting, editing (nudge, crop, fade) and zoom/scroll clips
- Insert/remove FX plug-ins with menu driven selection