Module Duplex.Applications.Mlrx
Mlrx is a live performance loop sequencer.
View the README.md (github)
Functions
__init (VarArg) | Constructor method |
on_idle () | inherited from Application |
update () | Update all UI components, called when initializing |
update_track_task () | Update track-related UI components |
initialize_app () | Reset the state of the application, make it ready for a new session |
clear_references () | Remove references to active song, stop running tasks |
start_app (start_running) | inherited from Application |
stop_app () | inherited from Application |
on_release_document () | inherited from Application |
on_new_document () | inherited from Application |
_build_app () | inherited from Application |
_enable_track_observable () | Enable track observables with some delay |
_attach_to_song () | Add notifiers to song invoked when first run, and when a new document becomes available |
rebuild_indices () | Rebuild indices when the tracks_observable require it - when we encounter a condition that may have changed the track order |
delete_track_at (idx) | Delete RenoiseTrack at provided index |
insert_track_at (idx) | Insert RenoiseTrack at provided index |
panic () | Cancel notes in all groups, reset state invoked when we exit edit mode / stop playing / stop application |
get_group_index (grp) | Method for discovering this group's index |
import_or_create () | Look for an existing session in the song, or (if not found) initialize a new session |
retrieve_group_track_index () | Retrieve the mlrx group-track index |
initiate_settings_task () | This method is called each time one of the local settings change |
clear_settings_task () | This method is called each time one of the local settings change |
select_track (idx) | Select provided logical track, update Renoise focus? |
assign_track (group_idx, track_idx, programmatic) | Assign the provided track to this group |
erase_pattern () | Erase the current pattern |
clone_pattern (seq_idx, migrate_playpos) | Clone the pattern, while moving the playhead to the new pattern |
update_matrix () | Update visual display of groups assignments |
update_arp_mode () | Update display of arpeggiator controls |
update_toggle_loop (trk) | Update display of loop toggle control |
update_group_toggles () | Update display of group toggle controls |
update_track_levels (match_trk) | Update display of track level controls |
update_track_panning (match_trk) | Update display of track panning controls |
update_track_shuffle (trk) | Update display of shuffle controls |
update_track_drift (trk) | Update display of drift controls |
update_group_levels (match_grp) | Update display of group level controls |
update_group_panning (match_grp) | Update display of group panning controls |
update_automation_mode () | Update display of automation-mode control |
update_track_selector () | Update display of track-select control |
update_linesync (trk) | Update sync button (light up if sample is synced) |
update_trigger_mode () | Update display of trigger mode buttons |
update_output_filter () | Update display of trigger mode buttons |
update_cycle_length () | Update display of cycle-length buttons |
decorate_tracks () | Update color & name of all tracks within the mlrx-group |
flash_automation_button () | Momentarily flash the automation button |
cycle_automation_mode () | Cycle through the available automation modes |
update_sound_source () | Update display of the source-select controls |
get_trigger_ctrl (trk, trigger_idx) | Provided with track and trigger index, retrieve the control |
update_trigger_pos (trk_idx, trigger_idx) | Update the lit position on the controller, called from the track itself |
trigger_feedback (trk_idx, trigger_idx, duration) | Provide some quick feedback on the controller (flashing buttons) |
purge_instruments (first_run) | After having swapped, loaded or removed instruments we call this function this will re-attach all instruments |
update_summary (trk_idx) | Update label displaying summary of track(s) |
get_pos_diff (pos1, pos2) | Obtain the difference in lines between two song-positions note: when the pattern is the same, we ignore the sequence and assume that pos1 comes before pos2 (so, a 64-line pattern containing two positions: 63 and 1 would result in 2 lines) TODO replace with xSongPos |
get_quantize () | Set the current quantize amount from renoise |
count_lines (seq_idx) | Count number of lines in a pattern |
on_edit_mode_change () | Stop any active recordings |
on_host_tempo_change () | This function will update the duration of phrases and unsynced samples, and compute a new 'writeahead' time. |
determine_metronome () | Provide timing for certain events (i.e. |
select_midi_port (port_idx) | Initialize MIDI input |
midi_callback (message) | Receive MIDI from device TODO use xMidiInput |
input_xy (val) | Generic routing of XY-Pad signal (e.g. |
input_key_velocity () | Called when keyboard velocity is changed in Renoise |
Fields
self._controls | keep references to our UI controls here |
Functions
- __init (VarArg)
-
Constructor method
Parameters:
- VarArg )
See also:
- on_idle ()
-
inherited from Application
See also:
- update ()
- Update all UI components, called when initializing
- update_track_task ()
- Update track-related UI components
- initialize_app ()
- Reset the state of the application, make it ready for a new session
- clear_references ()
- Remove references to active song, stop running tasks
- start_app (start_running)
-
inherited from Application
Parameters:
- start_running
Returns:
-
bool or nil
See also:
- stop_app ()
-
inherited from Application
See also:
- on_release_document ()
-
inherited from Application
See also:
- on_new_document ()
-
inherited from Application
See also:
- _build_app ()
-
inherited from Application
Returns:
-
bool
See also:
- _enable_track_observable ()
- Enable track observables with some delay
- _attach_to_song ()
- Add notifiers to song invoked when first run, and when a new document becomes available
- rebuild_indices ()
- Rebuild indices when the tracks_observable require it - when we encounter a condition that may have changed the track order
- delete_track_at (idx)
-
Delete RenoiseTrack at provided index
Parameters:
- idx
- insert_track_at (idx)
-
Insert RenoiseTrack at provided index
Parameters:
- idx
- panic ()
- Cancel notes in all groups, reset state invoked when we exit edit mode / stop playing / stop application
- get_group_index (grp)
-
Method for discovering this group's index
Parameters:
- grp
- import_or_create ()
- Look for an existing session in the song, or (if not found) initialize a new session
- retrieve_group_track_index ()
-
Retrieve the mlrx group-track index
Returns:
-
int (1 - number of sequencer tracks), #number of members
- initiate_settings_task ()
- This method is called each time one of the local settings change
- clear_settings_task ()
- This method is called each time one of the local settings change
- select_track (idx)
-
Select provided logical track, update Renoise focus?
Parameters:
- idx
- assign_track (group_idx, track_idx, programmatic)
-
Assign the provided track to this group
Parameters:
- group_idx (int) - the Mlrx-group index
- track_idx (int) - the Mlrx-track index
- programmatic (bool), when function is invoked by the app itself
- erase_pattern ()
- Erase the current pattern
- clone_pattern (seq_idx, migrate_playpos)
-
Clone the pattern, while moving the playhead to the new pattern
Parameters:
- seq_idx
- migrate_playpos
- update_matrix ()
- Update visual display of groups assignments
- update_arp_mode ()
- Update display of arpeggiator controls
- update_toggle_loop (trk)
-
Update display of loop toggle control
Parameters:
- trk
- update_group_toggles ()
- Update display of group toggle controls
- update_track_levels (match_trk)
-
Update display of track level controls
Parameters:
- match_trk
- update_track_panning (match_trk)
-
Update display of track panning controls
Parameters:
- match_trk
- update_track_shuffle (trk)
-
Update display of shuffle controls
Parameters:
- trk
- update_track_drift (trk)
-
Update display of drift controls
Parameters:
- trk
- update_group_levels (match_grp)
-
Update display of group level controls
Parameters:
- match_grp (Mlrx_group), update only a specific group
- update_group_panning (match_grp)
-
Update display of group panning controls
Parameters:
- match_grp (Mlrx_group), update only a specific group
- update_automation_mode ()
- Update display of automation-mode control
- update_track_selector ()
- Update display of track-select control
- update_linesync (trk)
-
Update sync button (light up if sample is synced)
Parameters:
- trk
- update_trigger_mode ()
- Update display of trigger mode buttons
- update_output_filter ()
- Update display of trigger mode buttons
- update_cycle_length ()
- Update display of cycle-length buttons
- decorate_tracks ()
- Update color & name of all tracks within the mlrx-group
- flash_automation_button ()
- Momentarily flash the automation button
- cycle_automation_mode ()
- Cycle through the available automation modes
- update_sound_source ()
- Update display of the source-select controls
- get_trigger_ctrl (trk, trigger_idx)
-
Provided with track and trigger index, retrieve the control
Parameters:
- trk
- trigger_idx
Returns:
-
UIButton
- update_trigger_pos (trk_idx, trigger_idx)
-
Update the lit position on the controller, called from the track itself
Parameters:
- trk_idx (int) the index of the Mlrx_track instance
- trigger_idx (int) optional, the position to light up (omit to clear)
- trigger_feedback (trk_idx, trigger_idx, duration)
-
Provide some quick feedback on the controller (flashing buttons)
Parameters:
- trk_idx
- trigger_idx
- duration
- purge_instruments (first_run)
-
After having swapped, loaded or removed instruments we call this function
this will re-attach all instruments
Parameters:
- first_run
- update_summary (trk_idx)
-
Update label displaying summary of track(s)
Parameters:
- trk_idx (int), limit update to this track
- get_pos_diff (pos1, pos2)
-
Obtain the difference in lines between two song-positions
note: when the pattern is the same, we ignore the sequence and assume
that pos1 comes before pos2 (so, a 64-line pattern containing two
positions: 63 and 1 would result in 2 lines)
TODO replace with xSongPos
Parameters:
- pos1
- pos2
- get_quantize ()
- Set the current quantize amount from renoise
- count_lines (seq_idx)
-
Count number of lines in a pattern
Parameters:
- seq_idx
Returns:
-
int (the number of pattern lines), or nil if not found
- on_edit_mode_change ()
- Stop any active recordings
- on_host_tempo_change ()
- This function will update the duration of phrases and unsynced samples, and compute a new 'writeahead' time. Note that if BPM is changed constantly change (via automation or otherwise), the task will never execute...
- determine_metronome ()
- Provide timing for certain events (i.e. blinking lights)
- select_midi_port (port_idx)
-
Initialize MIDI input
Parameters:
- port_idx
- midi_callback (message)
-
Receive MIDI from device
TODO use xMidiInput
Parameters:
- message
- input_xy (val)
-
Generic routing of XY-Pad signal (e.g. tilt sensor on monome)
Parameters:
- val
- input_key_velocity ()
- Called when keyboard velocity is changed in Renoise