Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow "Play dry through wet" as a default option or setting for each loop/track #294

Open
zigmhount opened this issue Mar 10, 2024 · 5 comments
Labels
feature New features or feature improvements

Comments

@zigmhount
Copy link

If I use mostly wet+dry tracks with MIDI input and synths in Carla, I will pretty much always use "Play dry recording through live effects" instead of "Play wet recording". It would be nice to have this button being the default one on the clip, rather than having to use the drop-down menu every time.

@SanderVocke
Copy link
Owner

SanderVocke commented Mar 10, 2024

Good idea.

I mostly play things once and immediately want the wet to play in order to save CPU. I mostly use the "play dry through wet" if I want to tweak effects and hear the result immediately.

However, I wonder if auto-choosing the previously used one would be the best choice. It seems a bit implicit. I think the way I would do it is to have a setting/control to change the button ordering globally or per track.

One more question: how do you feel about the mouse controls in general? In the beginning it was nice, but I quickly found that I had to add more buttons, and now it seems like a lot to cram into the space of a loop. I am considering just putting the controls in some dedicated place and not on the loops themselves. Downside is that you would have to first select the loop(s) and then click the playback control. What do you think?

Myself I mostly use the keyboard shortcuts now. If you want to give those a try: Settings -> LUA scripts -> click the question mark near "keyboard.lua" to get a list of shortcuts. The only issue I have with it currently is that sometimes the app loses keyboard focus and I have to click the background to get it back.

@SanderVocke SanderVocke added feature New features or feature improvements first_release labels Mar 10, 2024
@SanderVocke SanderVocke added this to the Initial release milestone Mar 11, 2024
@zigmhount
Copy link
Author

I mostly play things once and immediately want the wet to play in order to save CPU. I mostly use the "play dry through wet" if I want to tweak effects and hear the result immediately.

Yeah, the "play wet" is a very neat trick that I haven't got to use yet, but I can see myself getting used to that too. The MIDI recording remains stored, right?
A setting or control would be fine I think.

how do you feel about the mouse controls in general?

Actually, the first time I ran the app I found that the right-mouse control was underused, though I was mostly right-clicking in places that do nothing :) but I usually find right-clicks very intuitive, e.g. right-click on the empty frame in the center would show a menu with only "Create a track" and maybe "Open details panel".
Similarly, I could imagine the "play mode" and "record mode" to be configured in a right-click menu on the play/record buttons, and also on the track menu. (trying to not overload that right-click menu!)

I quickly found that I had to add more buttons, and now it seems like a lot to cram into the space of a loop.

That said, funnily enough I got exactly the same issue when I was working on this (Pure Data's GUI possibilities are very limited/minimalistic, e.g. no right-click at all). IMO a unified play/rec/stop button would make it too cumbersome and less intuitive, since the main purpose of such a looper is precisely to easily trigger and stop loops. However, I would not expect to access very often each loop's gain and balance knobs, so that I think it could be fine e.g. on the "details" panel (which is how Bitwig does it, and how I intended to design the MIDI version of my Pd-based looper).

Myself I mostly use the keyboard shortcuts now

I haven't used them yet, but in general I advocate for the discoverability of shortcuts, so as an improvement idea I would suggest to add them on the control's tooltips.

@SanderVocke
Copy link
Owner

SanderVocke commented Mar 21, 2024

I was thinking about this and I have a follow-up question. I am wondering how audio synthesis is supposed to work if you always use the "play dry through wet" option.

As you may know, in ShoopDaLoop each track has only a single FX / synth slot. All loops in the track share that plugin / external synthesis app together.

So when you play multiple loops in the same track in "dry through FX" mode, or when you play one in that way and simultaneously play some other stuff live on the same track, what happens is the synthesis plugin/app will receive a mix of MIDI messages at the same time.

In many cases this may be fine. But especially when things like Midi CC values, pitch wheel, mod wheel, sustain pedal etc. come into play, it will lead to unexpected sounds because of conflicting information from the different recordings. Apart from CPU usage, this is another reason why I usually play back the recorded audio instead.

So I was wondering how you would expect that to work, and also how it works in a tool like seq24/seq66. Any insights?

@zigmhount
Copy link
Author

Oh interesting, I didn't experiment enough to realize that all loops in one track use the same synth and FX stack. That's indeed how Luppp does it, and I did the same foe a while -but I was pleasantly surprised to discover that Bitwig allows changing the instrument (synth/FX) for each loop/clip even within the same track.
So you could have for example one track where the instrument and its timbre may vary from one scene to the next, even though it keeps the same "voice" in the arrangement (e.g. for bass or pads).

Seq24/64/128 do not restrict themselves to any concept of "track". All loops are assigned to output their MIDI content to one of 16 busses, each of which with 16 channels, so that you have room for up to 1616 synths. The distribution of instruments on the grid is completely free, so that you could have 8 rows8 columns all playing through the same synth.
In practice, for now I do use the same synth for each column, in part because my synths are hosted in vertical mixer strips and I would otherwise struggle to identify the correct one in the layout. But this will probably evolve.

I guess it depends on your ambitions for ShoopDaLoop. I'd say that the current design is an "opinionated, healthy limitation" because I don't have the need for more right now, or I can work around it easily enough.

Long story short, defaulting to "play dry through wet" was probably not a good idea :)

@SanderVocke
Copy link
Owner

I see. It would be nice to be more flexible about this and allow instantiating more FX stacks in a track, although I would probably keep the "1 track = 1 FX" setup as default for CPU-saving reasons.

I was already thinking about this "multiple timbres" thing though. Although there is only 1 FX, playing the wet recording does allow you to keep the original timbre and change the FX settings for the next loop in the track. ShoopDaLoop already automatically stores the full FX settings state at the time of each loop's recording. So in principle you can revert back to those settings at any time and play that timbre again in that loop, giving the illusion that you have N FX stacks. But this stuff is not documented ATM and probably incomplete in implementation too - to be continued.

@SanderVocke SanderVocke removed this from the Initial release milestone Jun 21, 2024
@SanderVocke SanderVocke changed the title [Idea] Set the default play/rec button according to the last used Allow "Play dry through wet" as a default option or setting for each loop/track Jun 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New features or feature improvements
Projects
None yet
Development

No branches or pull requests

2 participants