Skip to content
Janek edited this page Aug 31, 2020 · 19 revisions

Macro Format

This is the format specification for Mixxx Macros, a feature that allows the recording and reproduction of jumps and particular control changes.

See Mixxx Macros and Mixxx Macros Requirements for background on the project.

Controls

[ChannelN]

Currently implemented: status, activate, toggle, clear

Key/Control Range What it does
show_macros binary Whether to show the Macro Rack for this channel
macro_X_status -1 - 4, read-only -1=no track loaded, 0=empty, 1=recording armed, 2=recording, 3=recorded, 4=playing
macro_X_enabled binary Whether this Macro will automatically be started when the track is loaded
macro_X_loop binary Whether this Macro should loop infinitely
macro_X_activate binary If playing, seek to beginning and start over. If recorded, enable. If unset, start recording.
macro_X_toggle binary If playing, stop. If recorded, enable. If unset, start recording.
macro_X_clear binary If status is recorded(3), remove all actions. Keeps the label in case you want to re-record it.

Storage

A Macro with its Actions is stored in the protobuf format.

A table in the mixxxdb stores the binary blob of the Macro along with its name, the id of the corresponding track and its state (enabled/looped).

Clone this wiki locally