Thanks for taking the time to write those up - that all looks useful and interesting.

Unfortunately though, I’m getting application not responding every time I execute some of the scripts.

Following your video here: https://www.youtube.com/watch?v=HcF_lssW2Tg&list=PLCQRw62RgghbsZgsA98lLkOwjBSs4yc9T&index=2

All good up until 5.21 - then I press ok and the application locks up. I’ve tried nmf, hpss and sines with the same result. Oddly ampgate and ampslice seem to complete, but I can’t see it has done anything to the audio. noveltyslice seems to work though - I can see some slicing has occurred!

I’m on:
Reaper 6.11/64
OSX 10.14.6

I’m interestingly seeing files appear in the folder of the source file though:


Happy to provide more info if helpful.

I think this is an easy one, very kind of you to let me warm up first :stuck_out_tongue:

Are these super long files? Assuming you are running defaults (2 components?) then these are one minute sound files (10mb per min * 2channels). If you can open these sound files by dropping them back into REAPER then its likely the process is just taking a long time and not finishing in a reasonable timeframe for you. NMF is generally a super chunky algorithm to run and its complexity spirals with the fft size and the number of iterations.

Can you try this for me:

  1. Small sound file 2-10 seconds
  2. Iterations 50
  3. fftsettings 1024 512 1024

and see if it runs without locking up forever?

If you are able to send me the source media that you are testing and the parameters I’ll be able to rule out a machine specific error too but I think its more likely that you are just asking the algos to work through a lot of numbers.

1 Like

Thanks for the reply. Yes, you were right. That file is 15 seconds (but also 192khz), and takes around 1min 30seconds to process with default nmf settings - so more patience required my end!

In case it’s still helpful, here is the file:
https://drive.google.com/file/d/1ImbriGO-4P0yMqBS1csXH1-5aUc6QHpf/view?usp=sharing

1 Like

Ah yes, high sample rate too will make the computation that much more complex! I tend to experiment with very low number of iterations and a cheap-ish FFT then when I think I’ve got something good I’ll go for a mega-pass with chunky settings and go make a tea. You might also let REAPER guide your intuitions and then run the command line stuff elsewhere so that it doesn’t block the GUI and you can keep working. Perhaps there is room here for me to make a process non-blocking with an option flag or something. The only problem is if you move the item inbetween processing starting and stopping things could go wonky.

4 Likes

Hi @jamesbradbury93, I’ve got the ReaCoMa scripts pointing to the binaries but when I try to run them, I get the following error:

Summary
..._15950227959741.wav failed to be made by the command line.
stack traceback:
...tion Support/REAPER/Scripts/ReaCoMa-master/lib/utils.lua:103: in function 'utils.assert'
...ion Support/REAPER/Scripts/ReaCoMa-master/lib/layers.lua:29: in function 'layers.exist'
...tion Support/REAPER/Scripts/ReaCoMa-master/fluid-nmf.lua:57: in main chunk

I’m wondering if I did something wrong in setup? Thanks! Really excited to use these tools.
EDIT: Apparently I need to convert files to WAV or AIFF before running the scripts – the first file I tried was an .MP3, but I just tried on a WAV and it worked like a charm. Thanks!

1 Like

Ah yes, I should document this better to save debugging time in the future. Thanks for bringing that to my attention. I’m glad you persisted and got the scripts to work! Let me know if you have any questions.

2 Likes

Thank you so much for putting this together! This is great. It reminds me a lot of the Composers Desktop Project wrapper for Renoise in that it takes a really cool command line tool and gives it a useful, integrated interface in the DAW. I’ll be using this a lot.

2 Likes

This is so good! I got it working without a problem today (exept for trying to run the scripts on a .flac first) and had so much fun exploring the nmf script with different material. This’ll keep me busy for a while I’m sure.
Thanks a lot for this! :slight_smile:

2 Likes

I think in the next release I’ll try and make a prompt if the source is the wrong format. It’s really useful that you guys have mentioned this in your experience because to me I’m so used to running the tools on wav files that I don’t catch those sticky bits of user experience.

actually, my obsession with null summing allows you to demix and do either subtle changes almost imperceptible… or some seriously nasty destructive processing too :slight_smile: Sharpening or smoothing by a few dB tend to be a very potent example of the former (fft artefacts are quite masked with subtle stuff) and processing of certain elements only (demixing for processing) is a good example of the latter.

2 Likes

So would that be using the nmf algo? You are saying to de-mix with this, then working on individual elements before mixing together again?

I’ve had some fun on more experimental stuff, but need to try with some voice.

Just to chime in here:

All of the algorithms null-sum so whatever you extract/separate can be added together to recreate the original. So you might NMF to 2 components (in the hope that one of the components captures the noise) and then attenuate that component and add back to the other component to get a less noisy version of the original.

2 Likes

I see what you mean. I’d wondered if that was the case, so thanks for confirming.

Another question along those lines - with nmf, does it define a component of the sound based on analysis of the whole file or is it more step by step? So in practice, will I get different results working on 10 second chunks instead of processing a 60 second file for instance?

That’s correct. NMF looks at the whole file to do its decomposition so you will get distinct results nmfing 10 times on 6 second chunks in a 60 second file to nmfing once over the whole thing.

1 Like

Interesting tools. Always nice to expand Reaper. I can see myself using the algos to create odd artifacts and noise. Is the video tutorial intro made using the FluComa tools?

HPSS, sines, transients are also good, to create more understandable layers (another film by @jamesbradbury93 is coming I think on this…

1 Like

I’d love give kudos to the tools but that sound was generated by moshing files into 8bit wav files with this command line tool I wrote.

If you want to create odd artefacts and noise though there are so many different ways that you might apply the tools. I would first try transients~, nmf~ and hpss~ to see what you can extract with those methods.

I do indeed have a video coming very soon on this. Hopefully in the next few weeks.

2 Likes

I’ve just uploaded the new ReaCoMa tutorial. This one looks at segmentation using the ReaCoMa package.

5 Likes

Version 1.5.0a

A new version is here! This brings some bug fixes and new functionality.

You can download the new release from here - simply delete the old copy and use the new one.

5 Likes

aaaannnnddd… a new video is out today! I think people will like this one as it covers some more sound and mixing oriented examples.

9 Likes