New Tool (3.0): Multi Volumes

Runs in the background and lets you control multiple track (pre&post) volumes and maintain their relative levels.

When it’s enabled select tracks that you want to control in the pattern matrix and then adjust any mixer volume fader, all other selected tracks will also be adjusted by the same decibel value.

By default the tool is set to be operated manually and to only work on post fx volume faders.
Installing gives you two keyboard shortcuts, “Multi Volumes Enable” and “disable”. Assign these to keys to manually enable/disable the tool.

Open ‘Multi Volumes’ in the tools menu to open a preferences window where you can:

  • Background Enable: Ensures the tool is always running in the background when you start Renoise - Enable Pre Faders: Lets you use the tool on pre fx volume faders as well

See video for a demo:

Get it here:

Pretty excellent when you’ve lost your way in the headroom department, right?

Yeah totally, I find my mixes sound better when I keep channel levels low and boost on busses/master channels, however I tend to crank levels when composing so this is useful for taming things later.

Useful thanks!

It never ceases to impress me how many useful things can be done with the scripting in renoise.

Got this error on loading a new song, though the tool works afterwards:

main.lua:146: attempt to get length of local 'tracks' (a nil value)  
stack traceback:  
 main.lua:146: in function 'remove_postfx_vol_notifiers'  
 main.lua:248: in function 'deactivate'  
 main.lua:277: in function 'stop_tool'  
 main.lua:306: in function <305> <br>```


Indeed! I’m impressed that I could get something like this working without needing a GUI, it starts to almost work like a native function!

Thanks for, I will look into it, for now you might be able avoid it by stopping the tool before loading a new song, I think the issue is with what happens when new songs are opened and closed, it gets a bit more complicated when it’s running in the background and you have a zillion notifiers flying around :)

Excellent idea :yeah:/>

this is what I was looking for for some time :D

Yeah notifiers can be a bit of a pain to sometimes. Unfortunately its a bit of a difficult one to reproduce, it doesnt seem to happen every time.

Will post back if I figure any more clues.

You could also use the Song Settings/Track Headroom variable. Another gain stage for free :D

Think we are at crossed purposes here. The notifiers are to do with the scripting end of things.

Track headroom does add another twist to gain staging though! As if mixing wasn`t complicated already :)

I found a bug in the song opening/closing functions, if you open Renoise and then close it again or open a song without having started the tool first it will throw up an error. I’m not sure if its the same bug you found but I have fixed it for the next update, I will post it after I have finished adding another feature I am working on.

Yes you can but it’s a global setting, this tool lets you choose an arbitrary selection of tracks to adjust.

Anyway you don’t really need this tool as you can do the same thing by putting gainers on each channel and control them with a hydra, but that’s a bit slow.
I just missed the ability to do this after using Ableton so decided to code it for Renoise. That is actually my main motivator for writing tools at the moment, to get to a point where I don’t need or want to use Ableton anymore

Good to hear thanks!

Oops! I replied with a quote, didnt mean to do that - was not intentionally referring to your post.

:)/> no probs that explains it!

Updated to v0.2:

  • Fixed some bugs
  • Added tool preferences that allow for it to always be running in the background

See first post for download

This has been bugging me for ages, but I keep forgetting about tools. Thanks for making it! (It really ought to become a permanent Renoise feature though)

I think it doesn’t work on send tracks, is that right?

It should work but to be honest I’m finding a few bugs with how I am using the notifiers in this. The pattern matrix selection doesn’t have an observable so I am doing a bit of a hack job to work around that, I need to rethink how I have implemented it and will have a go when I have more time.

Best thing to do for now is disable and then enable the tool using the keyboard shortcuts if it behaves in an odd way.

I found one bug too when I was quickly removing tracks, it said something like “trying to access a Track object that does not exist anymore”… Not a big crashy problem though. Might have a look at the code to see if it can be improved upon.

Just had it again closing renoise

'com.afta8.MultiVolumes.xrnx\main.lua' failed in one of its notifiers.  
The notifier will be disabled to prevent further errors.  
Please contact the author ..  
std::logic_error: 'trying to access a nil object of type 'class SequencerTrack'. the object is not or no longer available.'  
stack traceback:  
 [C]: ?  
 [C]: in function '__index'  
 [string "do..."]:36: in function   
 main.lua:158: in function 'remove_postfx_vol_notifiers'  
 main.lua:260: in function 'deactivate'  
 main.lua:289: in function 'stop_tool'  
 main.lua:321: infunction <320><br>

(I typed it over so I didn't copy the irrelevant parts)</320>