DaisyCloudSeed lush reverb

A quick port of CloudSeed reverb to Daisy Patch. Need to expose the parameters and some presets to knobs.
See https://github.com/erwincoumans/DaisyCloudSeed/releases
The original version is here:
https://github.com/ValdemarOrn/CloudSeed

Had to move dynamic memory allocations to SDRAM pool and double->float.

5 Likes

Very cool! I’ll try flashing this once I’ve finished moving all my modules around for my latest layout iteration.

Would you consider adding an MIT license to this?

1 Like

Thanks, added the MIT license (as the original CloudSeed reverb). I also added the other factory presets, 9 in total, but they need some tuning. And I’m using the StkDekrispator (by BlueXav) cross-platform version to test this reverb, so you can run it on Windows, Linux and Mac OSX.

See https://github.com/erwincoumans/StkDekrispatorSynthesizer

The only cross-platform differences are the pool allocator and the SDRAM preprocessor definition
https://github.com/erwincoumans/StkDekrispatorSynthesizer/blob/master/examples/Dekrispator/main.cpp and the use of STK on non-Daisy platforms to deal with audio.

Here is a preliminary video of the reverb in action:

You can get the source and binary ex_cloudseed.bin here:

4 Likes

Very very cool. I will try it out tonight!! Thanks for your work!

One question, can I modulate the decay, diffusion and wet signal through cv?

kind regards frank

Yes, CV can modulate the parameters.

1 Like

Wow, very cool! Sounds wonderful!

@erwincoumans this is awesome!

One observation: if you move the reading of the controls in front of the “Audio rate loop” for (size_t i = 0; i < size; i++) so it’s called only every 1/48 of the time, you can set the parameters directly like this (without checking if they changed.).


reverb->SetParameter(::Parameter::MainOut, ctrlVal[1]);

reverb->SetParameter(::Parameter::LineDecay, ctrlVal[2]);

reverb->SetParameter(::Parameter::LateDiffusionFeedback, ctrlVal[3]);
1 Like

@MakingSoundMachines Good idea, moved the UI code out of the innerloop. Also allow to toggle display (reducing noise level). See https://github.com/erwincoumans/DaisyCloudSeed/releases

1 Like

:open_mouth: Wow, pretty cool! thank you very much @erwincoumans! :+1:

Been working a lot with the CloudSeed algorithm lately and spent quite some time understanding Valdemars Code.

For everybody that wants more information about Reverb Design I can very much recommend this Video from Sean Costello (Valhalla DSP): https://www.youtube.com/watch?v=aJLhqfHrwsw

Since I don’t have Patch I removed the Display and CV functions to make it work with seed only.
Did you try to use more than 2 Delaylines? or was that the maximum you could get to work in parallel?

Nice video. I gathered some Reverb information on this page, it also has a link to Tom Erbe video, some papers, open source implementations and discussion forums about reverbs.

2 Delaylines

It is mostly limited by the 64MB memory, you can play with the various settings.

1 Like

I gathered some Reverb information on this page 2, it also has a link to Tom Erbe video, some papers, open source implementations and discussion forums about reverbs.

Amazing, thank you for sharing!

It is mostly limited by the 64MB memory, you can play with the various settings.

I will try and play a bit with the buffers. I hope less multitaps and allpasses will allow more late rev lines

1 Like