Restart a loop with a delay

Synthesia is a living project. You can help by sharing your ideas.
Search the forum before posting your idea. :D

No explicit, hateful, or hurtful language. Nothing illegal.
Post Reply
monkel
Posts: 189

Post by monkel » 05-18-19 7:33 am

When I set up a loop to practice I typically put a delay between loops to concentrate on the next round.

Now when I'm in the loop and I've decided that I have made too many mistakes I see these options to restart the loop:
  • Press Previous Bookmark (<): This has a few issues. I need to actually have bookmarks, otherwise it will jump to the beginning of the song. And if there are bookmarks inside the loop I have to press it multiple times. Thirdly if I make it to the beginning of the loop it begins without delay, typically making me miss the beginning notes. I can configure a shortcut for "<" (typically C1), so at least I can keep my fingers down on the piano keys.
  • Manually tap the beginning of the loop in the interface: This takes my fingers from the keyboard and has me concentrate on something I don't want when I focus on the practice and depending on the length of the song the position I hit is likely off by some notes (or staves). Also there is no delay to concentrate on the start of the looped section.
  • Manually tap the end of the loop in the interface: This also takes my fingers from the keyboard so it's not ideal. When I'm in melody practice I'll probably have to play some additional notes to finish the loop that I don't want to practice right then, for rhythm practice I can just let the song run to the end. In both cases I at least get the configured delay at the beginning of the restarting loop.
  • Let the loop run to the end: This only works in rhythm practice. Also for a long loop it's impractical to have to listen to the rest every time. But - once it restarts it will do so with the delay.
  • Press Next Bookmark (>): This only works if there is a bookmark conveniently at or near the end of the loop (or manually put there) and if I'm in rhythm practice, otherwise there might be some last notes I still have to play.
  • Restart the loop after x errors: Generally a nice feature, but as a global feature I don't like it because I use loops very differently depending on the song. I might practice a loop for speed, precision, sound, dynamic play etc. and this will cause a restart in many situations where I don't need it (and I found no shortcut that I could configure to turn it on or off). Take it out of the global settings and put this as configurable setting for an individual loop in the loop config menu and I would probably use it in some cases.
Is there a shortcut to jump to the end of the loop? I haven't found one, but I think it would solve all issues mentioned above without any other foreseeable issues or necessary logic changes. In either rhythm or melody practice this jump to the loop end would trigger the restart of the loop and respect any delay that I may have set and require no bookmarks.

Nicholas
Posts: 11960

Post by Nicholas » 05-22-19 4:49 pm

This is another great (and easy-to-implement) usability improvement. I'd probably call the shortcut something like "Restart loop immediately", but it would still add whatever loop delay you currently have set.

I agree that "Restart after X errors" is a little out of place all the way back on the Settings screen. Easiest would be to leave it a global setting, but shimmy it to the loop configuration area during play. So, changing it in one song would still affect all songs, but it would still be trivial/immediate to toggle it on or off. Would that be a big enough improvement to warrant the effort?

monkel
Posts: 189

Post by monkel » 05-23-19 1:51 am

Great, thanks for picking this up.

With regards to the shortcut name, I would suggest simply "Restart loop". in German I'd call it "Schleife neu starten"


This brings me to further translation suggestions:

Code: Select all

<text id="loopDelay" v="Zeitverzögerung zwischen den Loops" />
<text id="toggleLoop" v="Loop schalten" /> 
should be

Code: Select all

<text id="loopDelay" v="Zeitverzögerung zwischen den Schleifen" />
<text id="toggleLoop" v="Schleife an-/ausschalten" /> 
Those are the only locations where loops are referred to als "Loops" (which would probably be understood by most). But as it's the translated "Schleifen" everywhere else already...

The "an-/ausschalten" is short for "anschalten/ausschalten" and means "turn on/off", but there's no good translation to toggle that would imply this in one verb. There's "umschalten" (switch) but that can mean switching to one of many states (not just on or off).

monkel
Posts: 189

Post by monkel » 05-23-19 11:39 pm

Regarding the restart after X errors setting - yes, having it available in the loop menu - even if it remains a global setting - sounds like a good idea!

Nicholas
Posts: 11960

Post by Nicholas » 05-30-19 4:43 pm

Ha! Digging around in the language files after reading everything you'd said about "toggle" to update those two strings, the very next lines ("hintL1", "hintL2", etc.) are all of the form "Links 1. Finger-Tipp ein-/ausschalten" which I recognize now as not having a good word for toggle. :lol:

(Is "ein-" there something like a plural? Or would "an-" be more correct?)

monkel
Posts: 189

Post by monkel » 05-31-19 7:44 am

einschalten / anschalten both mean to turn on
"Das Licht ist an.": "the light is on" (but: "Das Licht ist ein." would not be correct)
ein Licht= a light or lamp (not: a light that is necessarily turned on)

"ein" means one as in counting, but as I or 1 on a switch means "on", einschalten has the same meaning as anschalten

and: abschalten and ausschalten both mean turn off, but "abschalten" is more typically used in the context of a machine being turned off, while ausschalten is used for lights and machines.

Ich schalte den Computer ab und das Licht geht aus.
I turn the computer off and the light goes out.

But exceptions can be had in many ways.
:)

Post Reply