View Poll Results: What is the ideal behaviour for new files that are made by ReaCoMa?
|
Files are saved in the same directory as the source media
|
|
17 |
65.38% |
Files are saved in the REAPER Media folder
|
|
9 |
34.62% |
07-14-2020, 10:40 AM
|
#1
|
Human being with feelings
Join Date: Sep 2019
Location: Berlin
Posts: 61
|
ReaCoMa - Fluid Decomposition in REAPER
Hi everyone,
The last few months I've been working on a project ReaCoMa ( www.reacoma.xyz) which bring the wonderful FluCoMa www.flucoma.org tools to REAPER. The tools themselves enable some pretty interesting sonic possibilities that would otherwise be hard to implement or don't yet exist outside of more research oriented environments such as Python or C++ including:
- Non-negative matrix factorisation (blind source separation)
- Harmonic percussive source separation
- Transient extraction
- Sinusoidal resynthesis
- Novelty slicing
- Two amplitude slicers
- Transient slicing
- Spectral slicing
I've also created a series of tutorials that cover installation and usage to help make the process of integrating ReaCoMa into your creative workflow much easier. The playlist of these can be found below. I plan to develop on these tutorials in the coming weeks to go into more detail for each of the algorithms and to talk about how more developer-y types can extend what is already there.
Of course all of the software and tools are open source and free for you to use as you please, licensed under BSD3. More specific details and links can be found at the home website.
https://www.youtube.com/playlist?lis...lLkOwjBSs4yc9T
|
|
|
07-14-2020, 11:02 AM
|
#2
|
Human being with feelings
Join Date: Jun 2010
Location: Texas
Posts: 357
|
Amazing! I just watched the first tutorial and this looks like it will be very fun to dig into. Your hard work and generosity is much appreciated!
|
|
|
07-14-2020, 12:55 PM
|
#3
|
Human being with feelings
Join Date: Sep 2019
Location: Berlin
Posts: 61
|
Quote:
Originally Posted by michaeltonight
Amazing! I just watched the first tutorial and this looks like it will be very fun to dig into. Your hard work and generosity is much appreciated!
|
Thanks for the kind words Let me know if you have any questions.
|
|
|
07-14-2020, 03:19 PM
|
#4
|
Human being with feelings
Join Date: Mar 2018
Location: Cologne
Posts: 1,362
|
Looks interesting. And it looks like a lot of work.
Many thanks for your efforts. I will take a look at it.
Greetings
Eli
__________________
☆.。.:*・°☆.。.:*・°☆.。.:*・°☆REAPER//✿◔‿◔)°☆.。.:*・°☆.。.:*・°☆
|
|
|
07-14-2020, 11:55 PM
|
#5
|
Human being with feelings
Join Date: May 2015
Location: Warrington, UK
Posts: 1,444
|
Very interesting indeed, James
I'm wondering how this set of tools could be used in sound design rather than trying to extract specific elements of already mixed tracks.
I will download and have a play.
I have also sub'd to your channel so that I get notifications of new tutorials and stuff.
cheers for now,
andy
|
|
|
07-15-2020, 01:40 PM
|
#6
|
Human being with feelings
Join Date: Jan 2007
Location: mcr:uk
Posts: 3,889
|
Cool! Looks awesome.
|
|
|
07-15-2020, 07:28 PM
|
#7
|
Human being with feelings
Join Date: Oct 2019
Location: Sydney
Posts: 471
|
Wow James! I am in heaven. I have been using FluCoMa in Max since you began and recently moved to Reaper for my DAW to allow for exploring dsp. This project within Reaper is simply amazing!
|
|
|
07-15-2020, 11:12 PM
|
#8
|
Human being with feelings
Join Date: Apr 2011
Posts: 3,451
|
Very interesting! Thank you for your work!!
|
|
|
07-16-2020, 02:06 AM
|
#9
|
Human being with feelings
Join Date: Apr 2013
Location: France
Posts: 9,874
|
Interesting, thanks for sharing ! Seems like a good alternative to native dynamic split. Though a comparaison between the two can be nice (and there is also extra feature like track decomposition).
You should consider sharing via Reapack :P
Also, why dont you run the scripts from the action list on the introduction window ? It seems like you have to pick up a file manually on your finder.
|
|
|
07-16-2020, 04:27 AM
|
#10
|
Human being with feelings
Join Date: Oct 2019
Location: Sydney
Posts: 471
|
Hi James,
Just watched your YT videos and everything has gone as expected - thanks so much for putting the time into this.
|
|
|
07-16-2020, 10:46 PM
|
#11
|
Human being with feelings
Join Date: Apr 2014
Posts: 398
|
Hi James!
Your project is very exciting!!
Thanks for sharing this promising tool with the Reaper community!
I just test it for an hour and here are my feedbacks/questions:
- Instead of using the same path as the source file targeted by the fluid scripts why not put the newly created audiofile in the Reaper project media path?
Two main reasons for me:
1 - It's the default Reaper behaviour so reaper users will expect it to work like it. I was myself surprised to see a bunch of new file with suffixes in my personal sound library.
2 - If we are working on an unsaved Reaper project (it happens to me all the time) the newly created audiofile will be scattered everywhere the source file are coming from, again not ideal, especially if the users have a well-organized sound library.
- On my computer - I have to admit it's a very old one - the process can take up to 3 minutes (!) to finish, freezing Reaper during all this time. Is there anything that can be done to speed up the analysis? I don't want to put it in the "very powerful but not creative flux friendly" categoryÂ…
- Is there any documentation somewhere with a description of the settings of the FluCoMa algorithms?
|
|
|
07-17-2020, 12:30 AM
|
#12
|
Human being with feelings
Join Date: May 2015
Location: Warrington, UK
Posts: 1,444
|
Quote:
Originally Posted by Infrabass
Is there any documentation somewhere with a description of the settings of the FluCoMa algorithms?
|
There are 16 html files in the Docs folder.
I've had a look at those, though, and I haven't got a clue what those documents are telling me.
Having a look around the FluCoMa.org site doesn't help much as it seems to be more focused on SuperCollider and MAX.
I'm in the middle of something else at the moment but once that is out of the way I am going to try all the various tools to see if I can make any sense of the documentation.
|
|
|
07-17-2020, 01:36 AM
|
#13
|
Human being with feelings
Join Date: Jan 2007
Location: mcr:uk
Posts: 3,889
|
Quote:
Originally Posted by Infrabass
why not put the newly created audiofile in the Reaper project media path?
|
Yes, that would be nice if possible.
Quote:
Originally Posted by Infrabass
the process can take up to 3 minutes (!) to finish, freezing Reaper during all this time.
|
A progress bar would be ideal, or at least a "Please wait, this might take a while..." message so you know it probably hasn't crashed.
|
|
|
07-17-2020, 09:49 AM
|
#14
|
Human being with feelings
Join Date: Feb 2009
Location: Belgium
Posts: 211
|
This is really cool, thanks for releasing for Reaper. I'm happy to say that this works (so far, mostly) on my W7 machine even though the binaries say W10+.
My first attempt with the Non-Negative Matrix Factorisation have been quite good and I look forward to working through the others.
I was just going crazy with spleeter, now this! There isn't enough time in a day...
|
|
|
08-05-2020, 04:56 PM
|
#15
|
Human being with feelings
Join Date: Sep 2019
Location: Berlin
Posts: 61
|
Quote:
Originally Posted by X-Raym
Interesting, thanks for sharing ! Seems like a good alternative to native dynamic split. Though a comparaison between the two can be nice (and there is also extra feature like track decomposition).
You should consider sharing via Reapack :P
Also, why dont you run the scripts from the action list on the introduction window ? It seems like you have to pick up a file manually on your finder.
|
Unfortunately the spec for ReaPack disagrees with me. I'm quite low on development time right now as I'm completing a PhD and I didn't want to have to reshape the whole package to fit with the style that ReaPack enforces.
I tend to just use the built in Finder. It's a bit quicker for me because I know where I was last, so the scripts are always under one keyboard shortcut then some arrow keys. Everyone is free to bind to the scripts however they like (hence tutorial 3 to give some ideas).
A comparison is definitely a missed opportunity. I think once you play with the slicers they speak for themselves though as amplitude and transient slicing (i'm not sure what the model of a transient even is in REAPER) only goes so far at detecting certain kinds of onsets.
|
|
|
08-05-2020, 04:57 PM
|
#16
|
Human being with feelings
Join Date: Sep 2019
Location: Berlin
Posts: 61
|
Quote:
Originally Posted by tdc
Hi James,
Just watched your YT videos and everything has gone as expected - thanks so much for putting the time into this.
|
Great to hear mate. I hope all is well in Sydney. Just a sand groper here doing dsp stuff in dreary england!
|
|
|
08-05-2020, 05:06 PM
|
#17
|
Human being with feelings
Join Date: Sep 2019
Location: Berlin
Posts: 61
|
Quote:
Originally Posted by Infrabass
Hi James!
Your project is very exciting!!
Thanks for sharing this promising tool with the Reaper community!
I just test it for an hour and here are my feedbacks/questions:
- Instead of using the same path as the source file targeted by the fluid scripts why not put the newly created audiofile in the Reaper project media path?
Two main reasons for me:
1 - It's the default Reaper behaviour so reaper users will expect it to work like it. I was myself surprised to see a bunch of new file with suffixes in my personal sound library.
2 - If we are working on an unsaved Reaper project (it happens to me all the time) the newly created audiofile will be scattered everywhere the source file are coming from, again not ideal, especially if the users have a well-organized sound library.
- On my computer - I have to admit it's a very old one - the process can take up to 3 minutes (!) to finish, freezing Reaper during all this time. Is there anything that can be done to speed up the analysis? I don't want to put it in the "very powerful but not creative flux friendly" categoryÂ…
- Is there any documentation somewhere with a description of the settings of the FluCoMa algorithms?
|
Thanks for your thoughtful feedback. I really appreciate it. Let me go enumerate my responses to your questions/concerns :
1. The generation of files is tricky. I did ponder this for a while and I will admit that the currect mechanism is biased by my use patterns. The reason I chose to put it in the parent directory of the source media item is so that if you do end up making a project out of some experiments the files stay together. The caveat here is one assumes that audio files are moved or copied to the project directory once it becomes a project or beforehand. I wasn't aware (again because of my own bias) that people work out of the REAPER Media folder.
In light of this I propose something for the next update that is either one of those approaches or a hybrid of the two.
a) An option that can be set for where the default path is. Either same parent directory or REAPER Media. This option would be easily set inside an options file somewhere or perhaps through a script (or both)
b) [and I like this one less] determining whether or not the project is saved and saving to different places depending on that state.
What would you prefer so I can think more about it?
2. Many of these processes are just very chunky. Depending on what you are doing things can take a while. HPSS tends to be quite quick whereas NMF can balloon in duration very easily depending on the settings (big ffts and lots of iterations hurt). The other caveat is that you are possibly running files that are 192khz or something. Adding more samples to the calculations are the biggest culprit for making processes take long. Perhaps you can send me some files, tell me what kinds of processes you are doing so I can gauge if its normal behaviour - there might be something worth having a look at here together.
3. Documentation is there, but a bit out of the way. Firstly with the command line download you get a bunch of HTML files that have parameters. These html files are generated from the Max documentation so they aren't super helpful all the time. Places to investigate more about the algos are:
https://learn.flucoma.org
and of course join us at:
discourse.flucoma.org.
I've been in contact with these algorithms for a while so I take for granted what I know. I have been around for numerous interface changes/alterations to the underlying software so I know my way around. Ultimately experimentation + questions are going to be your biggest boon.
|
|
|
08-05-2020, 05:08 PM
|
#18
|
Human being with feelings
Join Date: Sep 2019
Location: Berlin
Posts: 61
|
Quote:
Originally Posted by synkrotron
There are 16 html files in the Docs folder.
I've had a look at those, though, and I haven't got a clue what those documents are telling me.
Having a look around the FluCoMa.org site doesn't help much as it seems to be more focused on SuperCollider and MAX.
I'm in the middle of something else at the moment but once that is out of the way I am going to try all the various tools to see if I can make any sense of the documentation.
|
The next few videos go into more detail on the algorithms themselves and I demonstrate them in musical contexts more. That might be helpful as they become public (every 2 weeks for a new video). The parameters outlined in the HTML documentation directly align with what you are prompted with in ReaCoMa. I agree they can be a bit arcane but you do get used to their mystical vibe If you are able to play around in Max (you can do it in the unlicensed version) that can be a great way to see the algorithms work (in real-time too).
|
|
|
08-05-2020, 05:09 PM
|
#19
|
Human being with feelings
Join Date: Sep 2019
Location: Berlin
Posts: 61
|
Quote:
Originally Posted by androo
This is really cool, thanks for releasing for Reaper. I'm happy to say that this works (so far, mostly) on my W7 machine even though the binaries say W10+.
My first attempt with the Non-Negative Matrix Factorisation have been quite good and I look forward to working through the others.
I was just going crazy with spleeter, now this! There isn't enough time in a day...
|
Hey thats really cool! Nice to know that Win 7 is working with the binaries. I'll pass that on to the team.
|
|
|
08-05-2020, 05:12 PM
|
#20
|
Human being with feelings
Join Date: Sep 2019
Location: Berlin
Posts: 61
|
Quote:
Originally Posted by IXix
Yes, that would be nice if possible.
A progress bar would be ideal, or at least a "Please wait, this might take a while..." message so you know it probably hasn't crashed.
|
The processes will never crash even if you quite REAPER but I agree a notification would be really nice. In the very unlikely event they do crash it will because you tried to NMF 10 hours of field recordings and the comptuter ran out of everything. Please let me know if you do manage this so I can find a way to hack around it
There is a progress bar planned at some point. The command line executables themselves dont actually output any progress but the potential is there to do it by altering the wrapper around the algorithms at the C++ level. I assure you its on the horizon because I want it for myself
You can also cap the speed in your ReaScript settings if you just want to kill processes that take a time greater than some number. That might be helpful for you.
|
|
|
08-06-2020, 10:25 AM
|
#21
|
Human being with feelings
Join Date: Jan 2007
Location: mcr:uk
Posts: 3,889
|
Quote:
Originally Posted by jbradbury
There is a progress bar planned at some point. The command line executables themselves dont actually output any progress but the potential is there to do it by altering the wrapper around the algorithms at the C++ level. I assure you its on the horizon because I want it for myself
|
Good to know. Doesn't bother me really as I understand how much number crunching is going on under the hood but if a progress bar happens that would be nice.
Thanks again for your work bringing this stuff into REAPER. Looking forward to more detailed videos.
|
|
|
08-07-2020, 04:52 AM
|
#22
|
Human being with feelings
Join Date: Sep 2019
Location: Berlin
Posts: 61
|
I've just updated the latest version to 1.5.0.a.
This brings a bug fix and some new features to help smooth any kinks out. The biggest change is now you can specify where you would like new files for ReaCoMa to be generated. This can be modified by setting the variable for the reacoma.output variable in config.lua. To change the location you'll need to edit this variable and choose from "source", "media" or a custom path. I'll write up some official documentation on the website once I've got some time.
To install just drop in the latest version where the old one used to be, or you can run them concurrently by selecting the scripts from the appropriate version.
https://github.com/jamesb93/ReaCoMa/releases/tag/1.5.0a
|
|
|
08-25-2020, 12:47 PM
|
#23
|
Human being with feelings
Join Date: Sep 2019
Location: Berlin
Posts: 61
|
Hi everyone!
I've just made a new video focusing on source separation techniques using ReaCoMa. Using just one algorithm you can deconstruct audio in a number of ways either for creative and divergent results or for more traditional extration tasks.
https://www.youtube.com/watch?v=GEyut6MePgY
|
|
|
08-25-2020, 03:54 PM
|
#24
|
Human being with feelings
Join Date: Feb 2019
Posts: 586
|
I'll look into this in a bit, but my word can you change your video intro sound? Sounds like my computer is about to explode, not a pleasant way to start tutorials.
|
|
|
08-26-2020, 08:29 AM
|
#25
|
Human being with feelings
Join Date: Apr 2013
Location: France
Posts: 9,874
|
I see you use a lot the native Explode multichannel items action, note that this one create new files which may not be very optimized, I have made a script version which is non destructive (doesn't need new file to be created), which may be more efficient. :P
|
|
|
01-04-2021, 08:56 AM
|
#26
|
Human being with feelings
Join Date: Sep 2019
Location: Berlin
Posts: 61
|
Quote:
Originally Posted by X-Raym
I see you use a lot the native Explode multichannel items action, note that this one create new files which may not be very optimized, I have made a script version which is non destructive (doesn't need new file to be created), which may be more efficient. :P
|
What do you mean by non optimised?
|
|
|
01-04-2021, 03:26 PM
|
#27
|
Human being with feelings
Join Date: Apr 2013
Location: France
Posts: 9,874
|
Quote:
Originally Posted by jbradbury
What do you mean by non optimised?
|
Destructive. Create new files.
But this us just a detail, not really important, you did great stuff there
Last edited by X-Raym; 01-05-2021 at 04:23 AM.
|
|
|
01-04-2021, 11:55 PM
|
#28
|
Human being with feelings
Join Date: Jan 2020
Posts: 1,927
|
This is pretty amazing. I can already think of several ways I want to try using these, even just for regular mixing stuff.
The sound design possibilities seem endless, too.
|
|
|
01-05-2021, 02:44 PM
|
#29
|
Human being with feelings
Join Date: May 2017
Posts: 454
|
this could be nice for sound design
|
|
|
01-28-2021, 05:35 AM
|
#30
|
Human being with feelings
Join Date: Feb 2017
Location: Zhytomyr,Ukraine
Posts: 449
|
Hi! I try install and
The version oF ReaCoMa is not compatible with the currently installed command line tools version hod may Fail or produce undefined behaviour.
Please update to version: Fluid Corpus Manipulation Toolkit, version 1.0.0-RC1
I have version 1.0.0-RC1 ? What is wrong
|
|
|
01-28-2021, 05:38 AM
|
#31
|
Human being with feelings
Join Date: Sep 2019
Location: Berlin
Posts: 61
|
Quote:
Originally Posted by SNJUK2
Hi! I try install and
The version oF ReaCoMa is not compatible with the currently installed command line tools version hod may Fail or produce undefined behaviour.
Please update to version: Fluid Corpus Manipulation Toolkit, version 1.0.0-RC1
I have version 1.0.0-RC1 ? What is wrong
|
Hi SNJUk2,
I have come across this as a bug on my own machine and wasn't able to pin it down. One thing you can try is starting from scratch (redownload ReaCoMa and command-line executables). You can also ignore version issues by editing . There is a line reacoma.bypass_version which by default is set to false. Set this to true. If you get another error after that it might tell us how to fix the original issue
|
|
|
01-28-2021, 12:57 PM
|
#32
|
Human being with feelings
Join Date: Feb 2017
Location: Zhytomyr,Ukraine
Posts: 449
|
Hi
i change reacoma.bypass_version = true
ulils.lua:105: Fatal ReaCoMa erroi! An assertion has failed Refer to the console for more information. If you provide a bug report it is useful to include the output of this window and the console.
ReaScript console output
E:\MUZ\Samples\SAMPL\OTHER\ACUSTIC\TibeCan Boral \psCb_ryChm_05_d_hpss-h_2855751082031.raav failed Co be made by Che command line. sC ack С г ас eb ack:
...DaCa\Roaming\REAPER\ScripCs\ReaCoHa-masCer\lib/uCils.lua:103: in funcCion 'uCils.asserC'
...aCa\Roaming\REAPER\ScripCs\ReaCoMa-masCer\lib/layers.lua:32: in funcCion 1 layers.exisC'
...aCa\Roaming\REAPER\ScripCs\ReaCoMa-masCer\fluid-hpss.lua:131: in main chunk
win10
|
|
|
01-28-2021, 01:14 PM
|
#33
|
Human being with feelings
Join Date: Sep 2019
Location: Berlin
Posts: 61
|
Quote:
Originally Posted by SNJUK2
Hi
i change reacoma.bypass_version = true
ulils.lua:105: Fatal ReaCoMa erroi! An assertion has failed Refer to the console for more information. If you provide a bug report it is useful to include the output of this window and the console.
ReaScript console output
E:\MUZ\Samples\SAMPL\OTHER\ACUSTIC\TibeCan Boral \psCb_ryChm_05_d_hpss-h_2855751082031.raav failed Co be made by Che command line. sC ack С г ас eb ack:
...DaCa\Roaming\REAPER\ScripCs\ReaCoHa-masCer\lib/uCils.lua:103: in funcCion 'uCils.asserC'
...aCa\Roaming\REAPER\ScripCs\ReaCoMa-masCer\lib/layers.lua:32: in funcCion 1 layers.exisC'
...aCa\Roaming\REAPER\ScripCs\ReaCoMa-masCer\fluid-hpss.lua:131: in main chunk
win10
|
What kind of file are you trying to process? WAVE? AIFF?
|
|
|
01-28-2021, 01:39 PM
|
#34
|
Human being with feelings
Join Date: Feb 2017
Location: Zhytomyr,Ukraine
Posts: 449
|
wave file
|
|
|
01-28-2021, 01:43 PM
|
#35
|
Human being with feelings
Join Date: Sep 2019
Location: Berlin
Posts: 61
|
Quote:
Originally Posted by SNJUK2
wave file
|
Can you try running the script inside UtilityScripts:
1. CleanPath.lua
2. WipeStates.lua
Then try reinstalling.
|
|
|
01-28-2021, 02:18 PM
|
#36
|
Human being with feelings
Join Date: Feb 2017
Location: Zhytomyr,Ukraine
Posts: 449
|
I try but the same errors
|
|
|
07-18-2022, 03:48 PM
|
#37
|
Human being with feelings
Join Date: Dec 2017
Location: Brazil
Posts: 1,992
|
wow thanks for your work ! I really appreatiatte this new tool! Also very good videos, loved the sound exemple you used!
And the new version using ImGUI is really nice
some sugestions: maybe think about an big GUI script that call the others? maybe will be easier to manage all the options :P anyway great great work! also naming it like reacoma_scriptname will be easier to find in the actions list. If you can, use reapack this way I will always be in sync with you s2.
|
|
|
03-09-2023, 10:29 AM
|
#38
|
Human being with feelings
Join Date: Apr 2014
Posts: 398
|
Hey James!
Sorry I didn't respond to your great answer above!
The option to save new files in the Reaper Media folder is perfect.
Just one quick question, with the v2, using ImGUI, is there a way to reset parameter to default value?
With so many parameters, it's easy to mess things up.
Also, having a preset system will be much useful :-)
|
|
|
03-29-2023, 02:57 PM
|
#39
|
Human being with feelings
Join Date: Jan 2014
Posts: 5,205
|
Recently these have stopped working and giving RealmGUI errors. Both are at newest version - anyone got a fix?
|
|
|
03-29-2023, 04:45 PM
|
#40
|
Human being with feelings
Join Date: Dec 2017
Location: Brazil
Posts: 1,992
|
Quote:
Originally Posted by Fergler
Recently these have stopped working and giving RealmGUI errors. Both are at newest version - anyone got a fix?
|
which errors?
|
|
|
Thread Tools |
|
Display Modes |
Linear Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -7. The time now is 01:22 AM.
|