Skip to content

Commit

Permalink
#1339 Introduce matrix setting "Allow tempo detection recording"
Browse files Browse the repository at this point in the history
  • Loading branch information
helgoboss committed Dec 11, 2024
1 parent 3de9f41 commit 03a21af
Show file tree
Hide file tree
Showing 14 changed files with 996 additions and 488 deletions.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,9 @@ include::partial$generated/elements/inspector/matrix/recording-basics.adoc[]

include::partial$generated/elements/inspector/matrix/recording-looped.adoc[]

include::partial$generated/elements/inspector/matrix/limit-recording-length.adoc[]
include::partial$generated/elements/inspector/matrix/recording-allow-tempo-detection-recording.adoc[]

include::partial$generated/elements/inspector/matrix/limit-recording-length.adoc[]

include::partial$generated/elements/inspector/matrix/recording-length.adoc[]

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
ifdef::pdf-theme[[[inspector-matrix-recording-allow-tempo-detection-recording,Allow tempo detection recording]]]
ifndef::pdf-theme[[[inspector-matrix-recording-allow-tempo-detection-recording,Allow tempo detection recording]]]
=== Allow tempo detection recording

image::playtime::generated/screenshots/elements/inspector/matrix/recording-allow-tempo-detection-recording.png[Allow tempo detection recording]

If this is enabled, recording a clip will initiate a link:https://docs.helgoboss.org/playtime/goto#feature-tempo-detection[tempo detection recording] when playback is stopped and the metronome is off.

If disabled, it will initiate a count-in recording instead.

1,459 changes: 973 additions & 486 deletions main/src/infrastructure/proto/generated.rs

Large diffs are not rendered by default.

10 changes: 10 additions & 0 deletions playtime-api/src/persistence/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -384,6 +384,11 @@ pub struct MatrixClipRecordSettings {
pub stop_timing: ClipRecordStopTiming,
#[serde(default)]
pub length_mode: RecordLengthMode,
/// If `true`, starting to record in stopped state when metronome off, does a tempo detection recording.
///
/// Otherwise, it does a count-in recording without a metronome.
#[serde(default = "allow_tempo_detection_recording_default")]
pub allow_tempo_detection_recording: bool,
#[serde(default)]
pub custom_length: EvenQuantization,
#[serde(default)]
Expand Down Expand Up @@ -513,6 +518,7 @@ impl Default for MatrixClipRecordSettings {
looped: looped_default(),
midi_settings: Default::default(),
audio_settings: Default::default(),
allow_tempo_detection_recording: allow_tempo_detection_recording_default(),
}
}
}
Expand All @@ -521,6 +527,10 @@ fn looped_default() -> bool {
true
}

fn allow_tempo_detection_recording_default() -> bool {
true
}

#[derive(Copy, Clone, Eq, PartialEq, Debug, Default, Serialize, Deserialize)]
pub struct MatrixClipRecordMidiSettings {
#[serde(default)]
Expand Down
2 changes: 1 addition & 1 deletion playtime-clip-engine

0 comments on commit 03a21af

Please sign in to comment.