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

Giada allows for overwriting existing sample channels #224

Closed
tomek-szczesny opened this issue Oct 20, 2018 · 11 comments
Closed

Giada allows for overwriting existing sample channels #224

tomek-szczesny opened this issue Oct 20, 2018 · 11 comments
Assignees
Labels
Milestone

Comments

@tomek-szczesny
Copy link
Collaborator

More discussion here:
https://www.giadamusic.com/forum/viewtopic.php?f=2&t=1521

I can try making a proposed fix.

@tomek-szczesny
Copy link
Collaborator Author

Same as #111 to me.

@tomek-szczesny
Copy link
Collaborator Author

I wanted to try and fix it but is there a point since recorder is being refactored?

@tblrchstr
Copy link
Collaborator

I quote the original question: is the audio overdub really useful? By audio overdub I mean mixing in a new material with the existing one within a channel. In my opinion this kind of overdub IS NOT useful. One can reproduce such thing by recording to a new channel (bonus point: this way you wouldn't lose the original audio data).

The thing is: if we ditch the audio overdub, for consistency we have to get rid of MIDI overdub as well.
I've never had the need to overdub MIDI, IMHO it can be removed.

So my 2 cents: as suggested in the original forum post, by default disable "arm" button on those channels that contain data (audio for sample channels, MIDI events for MIDI channels),

@tomek-szczesny @monocasual what do you guys think?

@tblrchstr
Copy link
Collaborator

Related: #216

@tomek-szczesny
Copy link
Collaborator Author

I think that this is up to the user whether they need overdub or not. As far as I know, beatboxers overdub a few loops to get a desired sound, for example to mimic a choir. Why on earth would they wrestle with UI to launch 5 consecutive arm/records, just to keep 5 voices in separate channels, since they only work together? I think this feature is a must for live beatboxing, and that seems to be a significant part of the userbase.

More importantly, in my opinion, we should discuss how do we deliver this feature in clean and simple way for the users, so they won't have to stumble upon features they don't want.

So I guess I'm sticking to my concept of selectable behavior on rearming populated channel: Locked (arm disabled), overdub, overwrite. With the first option selected by default.
I can't say why on earth would anyone want to overwrite a channel regularly, but this is rather easy to implement and someone might need just that for whatever reason.

@monocasual
Copy link
Collaborator

monocasual commented Dec 29, 2018

Back from vacation 😎

I understand that overdub is vital during beatboxing and other live performances. @tblrchstr suppose you are layering several voice drums (kicks, snares, ...) and suddenly you want to mute the drum track.

  • With audio overdub: just mute the drum channel
  • Without audio overdub: painstakingly go through all the drums channels and mute them one by one.

The latter is something I'd like to avoid at all costs while performing live. So the overdub capability must stay but it has to be easier to control.

I like the solution proposed by @tomek-szczesny on adding "arm behaviors": arm locked, overdub, overwrite. A channel with arm locked can't be armed, if already populated. A channel with arm unlocked can be recorded either in overdub or overwrite mode:

  • press record on main transport
    • if channel is not armed
      • do nothing
    • if channel is armed:
      • if channel is not populated
        • record new data (overdub or replace, doesn't really matter)
      • if channel is populated
        • if arm overdub: merge existing data with new data
        • if arm replace: replace existing data with new data

The arm behavior (locked, overdub, overwrite) is defined per channel (e.g. right click on the arm button) and applies to both Sample and MIDI channels.

(please @tomek-szczesny confirm the above)

On top of that, we must get rid of the annoying "no channels available for audio recording" popup. I really don't want to close pop-up windows while performing live. Display the message in a non-intrusive status bar if we really want to notify the user about it.

@tomek-szczesny
Copy link
Collaborator Author

Whoops, there goes a discussion that fell under MY radar! 😄

The arm behavior (locked, overdub, overwrite) is defined per channel (e.g. right click on the arm button) and applies to both Sample and MIDI channels.

(please @tomek-szczesny confirm the above)

Actually I envisioned this setting to be a global setting, but why not both? :) A default, global setting and per channel setting to make exceptions from the global rule.

Come to think of it, many channel options could have user-selectable default settings...

@monocasual
Copy link
Collaborator

monocasual commented Jul 28, 2020

The development version (starting from here) features the overdub mode. There's no overdub protection yet, so that's why this issue is still open. Before adding complicated logic, we'd like to experiment with the following feature: each channel has an option that prevents overdub in case there's already some audio in it. Channels with overdub protection enabled AND armed will simply skipped during audio recording. Additionally, this option can be globally turned on by default for all new channels in the configuration panel. @tomek-szczesny what do you think?

@tomek-szczesny
Copy link
Collaborator Author

It all sounds perfect except of this one detail:

Channels with overdub protection enabled AND armed will simply skipped during audio recording

I feel that this will be very confusing to the users. I suggest disabling arm button for protected channel instead.

Also I think that "overwrite", or "replace" feature I suggested back then is really unnecessary. Clearing channel buffer is not something a performer does too often and even if they have to, they may do it manually. Having two separate "overdub" and "replace" functionalities would be hard to keep track of without any visual feedback, and it's not worth another clutter in GUI.

@monocasual
Copy link
Collaborator

I feel that this will be very confusing to the users. I suggest disabling arm button for protected channel instead.

Oh yes, the arm button would be grayed out or marked as disabled.

@monocasual
Copy link
Collaborator

Done in a4af2b8 and following.

@monocasual monocasual removed their assignment Nov 23, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants