Skip to content

System Variables

bill-auger edited this page Apr 1, 2017 · 2 revisions

The following read-only system variables may be used in your configurations. They are internal to FreeWheeling and are globally available. You can not change the value of these variables with events like set-variable and toggle-variable. System variables have special events like set-master-in-volume for control.

Table of Contents

Variables

SYSTEM_midi_transpose

Semitones of current MIDI transpose

Affects all outgoing MIDI events to FluidSynth and the external MIDI output port.

SYSTEM_master_in_volume

Master input volume

1.0 is full scale

SYSTEM_master_out_volume

Master output volume

1.0 is full scale

SYSTEM_cur_pitchbend

Current value of MIDI pitchbender before offset

SYSTEM_bender_tune

Current offset of MIDI pitchbender (see set-midi-tuning)

SYSTEM_cur_limiter_gain

Current autolimiter gain

Changes as audio levels change it's actually more of a soft compressor.

SYSTEM_audio_cpu_load

Current audio CPU load

SYSTEM_sync_active

Non-zero if transport sync is sending or receiving beats/bars/ticks

This will happen whenever you have a pulse, or if another audio app is transmitting sync information.

SYSTEM_sync_transmit

Non-zero if Freewheeling is transmitting sync information

By default, Freewheeling tries to become timebase master. When the transport starts rolling, FW will transmit sync information. If another app is master, FW will receive sync information.

SYSTEM_midisync_transmit

Non-zero if Freewheeling is transmitting MIDI sync information

SYSTEM_fluidsynth_enabled

Is FluidSynth enabled?

SYSTEM_num_help_pages

Number of help pages available

SYSTEM_num_loops_in_map

Total number of loops in the whole map

SYSTEM_num_recording_loops_in_map

Total number of loops currently recording or overdubbing in map

Watch this to see if you have runaway loops recording.

SYSTEM_num_patchbanks

Total number of patch banks defined in configuration

SYSTEM_cur_patchbank_tag

Tag for currently selected patchbank

You can use this to change Freewheeling's behavior depending on which patchbank is selected.

SYSTEM_loopid_lastrecord_0

Loop ids for the most recently recorded loops (also SYSTEM_loopid_lastrecord_1, SYSTEM_loopid_lastrecord_2, and so on)

The number of last record appears under loops, so you can see which loops were recorded more recently.

SYSTEM_in_1_volume

Current volumes for given inputs (also SYSTEM_in_2_volume, SYSTEM_in_3_volume , and so on)

Up to the number of inputs you have defined.

SYSTEM_in_1_record

Flag for each input that tells us whether the input is set to record (SYSTEM_in_2_record, SYSTEM_in_3_record, and so on)

Up to the number of inputs you have defined.

SYSTEM_num_midi_outs

Number of MIDI outputs you have defined

SYSTEM_snapshot_page_firstidx

Index of the first snapshot on the currently visible page

SYSTEM_num_switchable_interfaces

Number of switchable interfaces defined

SYSTEM_cur_switchable_interface

Index of switchable interface currently selected

Browser types

BROWSE_patch

Patch browser

Loads synth patches.

BROWSE_loop

Loop browser

Loads loops from disk.

BROWSE_scene

Scene browser

Loads scenes from disk.