Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 43 additions & 0 deletions source/chapters/appendix/mixxx_controls.rst
Original file line number Diff line number Diff line change
Expand Up @@ -570,6 +570,8 @@ Any control listed above for :mixxx:cogroupref:`[ChannelN]` will work for a samp

Jump forward (positive) or backward (negative) by N beats. If a loop is active, the loop is moved by X beats.

If the loaded track has no beat grid, seconds are used instead of beats.

:range: any real number within the range, see :mixxx:coref:`[ChannelN],beatloop_X_activate`
:feedback: Player jumps forward or backward by X beats.

Expand All @@ -583,6 +585,8 @@ Any control listed above for :mixxx:cogroupref:`[ChannelN]` will work for a samp
Set the number of beats to jump with :mixxx:coref:`beatjump_forward <[ChannelN],beatjump_forward>`
/:mixxx:coref:`beatjump_backward <[ChannelN],beatjump_backward>`.

If the loaded track has no beat grid, this value is treated as seconds instead of beats.

:range: positive real number
:feedback: Beatjump size spinbox

Expand Down Expand Up @@ -620,6 +624,8 @@ Any control listed above for :mixxx:cogroupref:`[ChannelN]` will work for a samp
Jump forward by :mixxx:coref:`beatjump_size <[ChannelN],beatjump_size>`.
If a loop is active, the loop is moved forward by X beats.

If the loaded track has no beat grid, seconds are used instead of beats.

:range: binary
:feedback: Player jumps forward by :mixxx:coref:`beatjump_size <[ChannelN],beatjump_size>`.

Expand All @@ -633,6 +639,8 @@ Any control listed above for :mixxx:cogroupref:`[ChannelN]` will work for a samp
Jump backward by :mixxx:coref:`beatjump_size <[ChannelN],beatjump_size>`.
If a loop is active, the loop is moved backward by X beats.

If the loaded track has no beat grid, seconds are used instead of beats.

:range: binary
:feedback: Player jumps backward by :mixxx:coref:`beatjump_size <[ChannelN],beatjump_size>`.

Expand All @@ -647,6 +655,8 @@ Any control listed above for :mixxx:cogroupref:`[ChannelN]` will work for a samp
X = 0.03125, 0.0625, 0.125, 0.25, 0.5, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512.
If a loop is active, the loop is moved forward by X beats.

If the loaded track has no beat grid, this value is treated as seconds instead of beats.

:range: binary
:feedback: Player jumps forward by X beats.

Expand All @@ -661,6 +671,8 @@ Any control listed above for :mixxx:cogroupref:`[ChannelN]` will work for a samp
X = 0.03125, 0.0625, 0.125, 0.25, 0.5, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512.
If a loop is active, the loop is moved backward by X beats.

If the loaded track has no beat grid, this value is treated as seconds instead of beats.

:range: binary
:feedback: Player jumps backward by X beats.

Expand All @@ -672,6 +684,7 @@ Any control listed above for :mixxx:cogroupref:`[ChannelN]` will work for a samp
[SamplerN],beatloop_activate

Set a loop that is :mixxx:coref:`beatloop_size <[ChannelN],beatloop_size>` beats long and enables the loop.
If the loaded track has no beat grid, seconds are used instead of beats.

Depending on the state of :mixxx:coref:`loop_anchor <[ChannelN],loop_anchor>` the loop is created forwards
or backwards from the current position.
Expand All @@ -691,6 +704,8 @@ Any control listed above for :mixxx:cogroupref:`[ChannelN]` will work for a samp
Activates a loop over X beats. A control exists for
X = 0.03125, 0.0625, 0.125, 0.25, 0.5, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512.

If the loaded track has no beat grid, seconds are used instead of beats.

Depending on the state of :mixxx:coref:`loop_anchor <[ChannelN],loop_anchor>` the loop is created forwards
or backwards from the current position.

Expand All @@ -709,6 +724,8 @@ Any control listed above for :mixxx:cogroupref:`[ChannelN]` will work for a samp
Activates a loop over X beats backwards from the current position. A control exists for
X = 0.03125, 0.0625, 0.125, 0.25, 0.5, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512

If the loaded track has no beat grid, seconds are used instead of beats.

:range: binary
:feedback: Beatloop X button in skin is lit. A loop overlay is shown over X beats on waveform.
The :mixxx:coref:`slip mode <[ChannelN],slip_enabled>` toggle is activated.
Expand All @@ -726,6 +743,8 @@ Any control listed above for :mixxx:cogroupref:`[ChannelN]` will work for a samp
Changing this will resize an existing loop if the length of the loop matches
:mixxx:coref:`beatloop_size <[ChannelN],beatloop_size>`.

If the loaded track has no beat grid, seconds are used instead of beats.

:range: positive real number
:feedback: Beatloop size spinbox and possibly loop section on waveform

Expand All @@ -739,6 +758,8 @@ Any control listed above for :mixxx:cogroupref:`[ChannelN]` will work for a samp
Toggles a loop over X beats. A control exists for
X = 0.03125, 0.0625, 0.125, 0.25, 0.5, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512.

If the loaded track has no beat grid, seconds are used instead of beats.

Depending on the state of :mixxx:coref:`loop_anchor <[ChannelN],loop_anchor>` the loop is created forwards
or backwards from the current position.

Expand All @@ -765,6 +786,8 @@ Any control listed above for :mixxx:cogroupref:`[ChannelN]` will work for a samp
[SamplerN],beatlooproll_activate

Activates a rolling loop over :mixxx:coref:`beatloop_size <[ChannelN],beatloop_size>` beats.
If the loaded track has no beat grid, seconds are used instead of beats.

Once disabled, playback will resume where the track would have been if it had not entered the loop.

Depending on the state of :mixxx:coref:`loop_anchor <[ChannelN],loop_anchor>`, the loop is created forwards
Expand All @@ -787,6 +810,8 @@ Any control listed above for :mixxx:cogroupref:`[ChannelN]` will work for a samp
track would have been if it had not entered the loop. A control exists for
X = 0.03125, 0.0625, 0.125, 0.25, 0.5, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512.

If the loaded track has no beat grid, seconds are used instead of beats.

Depending on the state of :mixxx:coref:`loop_anchor <[ChannelN],loop_anchor>`, the loop is created forwards
or backwards from the current position.

Expand All @@ -806,6 +831,8 @@ Any control listed above for :mixxx:cogroupref:`[ChannelN]` will work for a samp
not entered the loop. A control exists for
X = 0.03125, 0.0625, 0.125, 0.25, 0.5, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512

If the loaded track has no beat grid, seconds are used instead of beats.

:range: binary
:feedback: Beatloop X button in skin is lit. A loop overlay is shown over X beats on waveform.
The :mixxx:coref:`slip mode <[ChannelN],slip_enabled>` toggle is activated.
Expand Down Expand Up @@ -1333,6 +1360,8 @@ Any control listed above for :mixxx:cogroupref:`[ChannelN]` will work for a samp

Identical to :mixxx:coref:`hotcue_X_activate <[ChannelN],hotcue_X_activate>`, but this always sets a saved loop, regardless of whether a loop is enabled or not.
If no loop is available, this sets and enables a beat loop of of :mixxx:coref:`beatloop_size <[ChannelN],beatloop_size>`.
If the loaded track has no beat grid, seconds are used instead of beats.

This control can be used for controllers that have dedicated :term:`hotcue`/saved loop pad modes.

.. versionadded:: 2.4.0
Expand All @@ -1344,6 +1373,7 @@ Any control listed above for :mixxx:cogroupref:`[ChannelN]` will work for a samp

Enables or disables a loop from the position of :term:`hotcue` X.
If X is a saved loop, that loop will be used, otherwise it will set a beatloop of :mixxx:coref:`beatloop_size <[ChannelN],beatloop_size>` from the cue position.
If the loaded track has no beat grid, seconds are used instead of beats.
In case the hotcue is not set, this control will set a regular cue point at the current position and start a beatloop.

This control can be used to map the primary action of the "Cue Loop" performance pad mode on Serato-style controllers.
Expand Down Expand Up @@ -1443,6 +1473,7 @@ Any control listed above for :mixxx:cogroupref:`[ChannelN]` will work for a samp

If :term:`hotcue` X is set, seeks the player to hotcue X's position, starts playback and looping.
If the hotcue is a saved loop, the loop is enabled, otherwise a beatloop of :mixxx:coref:`beatloop_size <[ChannelN],beatloop_size>` is set from the hotcue's position.
If the loaded track has no beat grid, seconds are used instead of beats.

This control can be used to map the secondary action of the "Cue Loop" performance pad mode on Serato-style controllers.

Expand Down Expand Up @@ -1508,6 +1539,8 @@ Any control listed above for :mixxx:cogroupref:`[ChannelN]` will work for a samp

Identical to :mixxx:coref:`hotcue_X_set <[ChannelN],hotcue_X_set>`, but this always saves a loop (i.e. :mixxx:coref:`hotcue_X_type <[ChannelN],hotcue_X_type>` "Loop"), regardless of whether a loop is enabled or not.
If no loop is available, this sets and enables a beat loop of of :mixxx:coref:`beatloop_size <[ChannelN],beatloop_size>`.
If the loaded track has no beat grid, seconds are used instead of beats.

This control can be used for controllers that have dedicated :term:`hotcue`/saved loop pad modes.

.. versionadded:: 2.4.0
Expand Down Expand Up @@ -1900,6 +1933,8 @@ Any control listed above for :mixxx:cogroupref:`[ChannelN]` will work for a samp

Move loop forward by X beats (positive) or backward by X beats (negative).

If the loaded track has no beat grid, seconds are used instead of beats.

If a saved loop is currently enabled, the modification is saved to the hotcue slot immediately.

:range: real number
Expand All @@ -1917,6 +1952,8 @@ Any control listed above for :mixxx:cogroupref:`[ChannelN]` will work for a samp
Moves the loop in and out points forward by X beats. A control exists for
X = 0.03125, 0.0625, 0.125, 0.25, 0.5, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512

If the loaded track has no beat grid, seconds are used instead of beats.

:range: binary
:feedback: Loop moves forward by X beats.

Expand All @@ -1934,6 +1971,8 @@ Any control listed above for :mixxx:cogroupref:`[ChannelN]` will work for a samp
Loop moves by X beats. A control exists for
X = 0.03125, 0.0625, 0.125, 0.25, 0.5, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512

If the loaded track has no beat grid, seconds are used instead of beats.

If a saved loop is currently enabled, the modification is saved to the hotcue slot immediately.

:range: binary
Expand Down Expand Up @@ -4476,6 +4515,8 @@ In the meantime, skins and controller mappings that still use them will keep wor

Setup a loop over the set number of beats.

If the loaded track has no beat grid, seconds are used instead of beats.

:range: positive real number
:feedback: A loop is shown over the set number of beats.

Expand Down Expand Up @@ -4634,6 +4675,8 @@ In the meantime, skins and controller mappings that still use them will keep wor

Setup a loop over X beats. A control exists for X = 0.03125, 0.0625, 0.125, 0.25, 0.5, 1, 2, 4, 8, 16, 32, 64

If the loaded track has no beat grid, seconds are used instead of beats.

:range: toggle
:feedback: A loop is shown over X beats.

Expand Down
2 changes: 1 addition & 1 deletion source/chapters/user_interface.rst
Original file line number Diff line number Diff line change
Expand Up @@ -683,7 +683,7 @@ You can also shift loops using the :ref:`beatjump / loop move controls <interfac
If a loop is set, a loop overlay will be drawn on the
:ref:`waveforms <interface-waveform>`.
**Beatloop**
Left-clicking the Beatloop button starts a loop over the set number of beats. If quantize is enabled, it snaps to the nearest beat. This works for manually placed loops as well as automatic loops set by
Left-clicking the Beatloop button starts a loop over the set number of beats. If the loaded track has no beats, the unit is seconds. If quantize is enabled, it snaps to the nearest beat. This works for manually placed loops as well as automatic loops set by
the beatlooping buttons. Depending on the current status of the loop, the
loop overlay on the waveforms changes color. Right-clicking the Beatloop button temporarily enables a rolling loop over the set number of beats. Playback will resume where the track would have been if it had not entered the loop.
**Double loop**
Expand Down
Loading