Skip to content

Feature/overdub in place#2421

Merged
m-m-adams merged 10 commits into
SynthstromAudible:communityfrom
m-m-adams:feature/overdub_in_place
Aug 24, 2024
Merged

Feature/overdub in place#2421
m-m-adams merged 10 commits into
SynthstromAudible:communityfrom
m-m-adams:feature/overdub_in_place

Conversation

@m-m-adams

Copy link
Copy Markdown
Collaborator

Add a new overdub method for audio clips based on resampling their output. This allows for more traditional looper workflows. LOOP command auto extends and the existing sample loops as you play. LAYER does not auto extend but continues adding layers. This is functionally the same as the existing clip cloning method but avoids weirdness in the grid by staying on a single output.

I've elected to not use this new method in rows mode for old times sake and so that people who like the individual clip per layer approach can continue to use it.

Exclusively works in grid mode for audio outputs with monitoring right now (midi controller required). There's some work to do to enable it for outputs without monitoring (namely adding the input to the rendered audio, and therefore recording pre effects) but this basic usecase of recording post fx and with monitoring on is fully functional

This is largely ready to extend to instrument clips as well - the missing feature is automatically copying the previous clip contents as the loop extends so it's disabled until that's done. Turning it on now just leads to the existing clip playing once and then auto extending with blank space.

@github-actions

github-actions Bot commented Aug 11, 2024

Copy link
Copy Markdown
Contributor

Test Results

103 tests  +1   103 ✅ +1   0s ⏱️ ±0s
 15 suites ±0     0 💤 ±0 
 15 files   ±0     0 ❌ ±0 

Results for commit f43dbf0. ± Comparison against base commit c0189f7.

♻️ This comment has been updated with latest results.

@sichtbeton

Copy link
Copy Markdown
Contributor

Would it be possible to not require a midi controller, thus making the looping self-contained within the Deluge?

@m-m-adams

Copy link
Copy Markdown
Collaborator Author

Absolutely but I'm not sure of the UI yet. The looping command for rows mode is to hold record and press a row below the one you want to loop but that doesn't work in the grid (record+pad in green does record arming, it's open in blue but that breaks the 'edit mode' metaphor)

@seangoodvibes

Copy link
Copy Markdown
Collaborator

@m-m-adams so I tried this out and it doesn't seem to work for me.

  • I created a new song
  • I created an audio clip with monitoring on (to record external audio in)
  • With the audio clip selected, I send the global midi command loop to record the first audio loop, and hit loop again to stop
  • When the audio starts looping, I hit loop or layer (both have the same issue) to record the next audio layer and I get an error saying "INSUFFICIENT RAM" on the display, so it's unable to record that second audio layer. The first audio loop keeps looping, no issues there.

So it just seems like the creation of the layer is failing.

@m-m-adams

m-m-adams commented Aug 18, 2024

Copy link
Copy Markdown
Collaborator Author

RAM issues are unrelated. Did you use a release build?

nvm, I think it says RAM issue no matter why the recorder creation fails. It must be possible to get in a state where the recorder can't be created but it doesn't fall back to the old style

@m-m-adams
m-m-adams force-pushed the feature/overdub_in_place branch from 936dcb0 to dedd95a Compare August 19, 2024 00:52
@m-m-adams
m-m-adams force-pushed the feature/overdub_in_place branch from dedd95a to 8641d06 Compare August 21, 2024 02:58
@m-m-adams
m-m-adams added this pull request to the merge queue Aug 24, 2024
Merged via the queue into SynthstromAudible:community with commit 7d2ac8b Aug 24, 2024
@m-m-adams m-m-adams mentioned this pull request Aug 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants