Use MVerb by Martin Eastwood for reverberation - #3787
Conversation
|
Edit: fixed |
I wonder if the sub-module clone can be repo-specific, so we can have one that only does liboboe for Android and another that does this for all platforms, included in the main clone step. That suggests we also need build documentation changes included here. |
Haven't though about that but, yes, certainly. Edit: |
If it is not in .github they should be designed to build .deb/.dmg/.exe/.ipa/.apk I believe that this is not achieved at the moment. However, you can try and see where they fail. |
|
For my taste, it is a bit too "far" . |
It is nothing that is "needed" but the current reverb sounds horrible, tbh. |
|
Yes. I think the reverb implemented here (this PR) sounds too far. Yes, probably better than what we have at the moment. |
|
Actually, we could also only include the reverb if the submodule was loaded. |
I used one of the presets just to have at least something to start from. I'm not with my usual gear but will be tomorrow. I'll tweak some settings and try with different instruments and hopefully find a useful preset. |
|
Just a thought: We could easily expose the reverb parameters via JSON-RPC and store them in the .ini file |
|
You should be able to test the autobuild scripts on your own repo without raising a PR by pushing to a branch starting with "autobuild" -- I think. |
Yes, that works. But I meant locally as in my machine. I found something which involved containers and didn't work for windows so I guess I'll stick to my github repo. |
|
It should definitely have the presets as configuration option in the Advanced Setup screen too. |
I wasn't too sure about how to handle this. Either make it JSON-RPC exclusive or have power users and nerds edit their INI files, which is dead easy. I didn't want to bloat the UI with a setting nobody actually requested. |
|
I also only have limited UI understanding. I think @ignotus666 knows more. |
I guess this is due to the "predelay" parameter setting. I chose a preset with no pre-delay. |
Done |
|
207c103 to
3b78ee6
Compare
|
After some more thinking: I think we should indeed detect if the submodule was cloned. If not the reverb feature should be hidden and while running qmake a warning should be issued. I suspect that you could check if the folder contains the reverb code and if not set pre processor flags -> use ifdefs in the code to remove the reverb functionality. For the UI hide or remove it it if reverb is not compiled. I would personally not use reverb even in this upgraded state. |
I'd then argue it should be on by default and a qmake option |
|
Maybe yes. Better ask the user: Reverb not found. Want to clone? |
No, |
|
Ok. Fair point. |
e30cdf7 to
82b5a5a
Compare
QMake will try to clone the submodule if it can't find it and Edit, a small excerpt from the autobuilds: Submodule 'libs/mverb' (https://github.com/martineastwood/mverb.git) registered for path 'libs/mverb'
Cloning into '/home/runner/work/jamulus/jamulus/libs/mverb'...
Submodule path 'libs/mverb': checked out '9f9512e9d990fcf265e00fc7c2ee47ad20c8019f'
Project MESSAGE: building with MVerb |
3933834 to
4d4f3f3
Compare
ann0see
left a comment
There was a problem hiding this comment.
Weirdly no reverb seems to hide the pan pots on macOS.
Add reverb preset selection to advanced settings dialogue make "Stadium" the default reverb preset Make reverb buffers protected members Add reverb presets
Optionally build without the reverb plugin and hide all related UI elements
…module although requested
Short description of changes
This replaces the inbuilt reverb with MVerb by Martin Eastwood.
CHANGELOG: Use MVerb by Martin Eastwood for reverberation
Context: Fixes an issue?
This replaces the inbuilt reverb with a professional grade reverb algorithm:
Does this change need documentation? What needs to be documented and how?
COMPILING.md, similar to the Android build instructions.Corresponding PR: Add documentation on advanced settings->reverb preset jamuluswebsite#1153
Status of this Pull Request
Up for discussion
What is missing until this pull request can be merged?
As this has not been tested thoroughly I'd like to keep it a draft for now
Checklist