In search for a coding project

Hi peeps,

Beside making music I’m coding. And I want to do more with that with Renoise. LUA is really cool!

But there’s one thing. I don’t know anything which I can build. So my question to you is if there’s something wanted? You ask, I make. If it’s not to big. I just want to code a project.

Let me know!

1 Like

For a first project, I think it’s good to add some pattern editor shortcut.

One problem is that many things have already been done, but I have one rather simple idea that I could see myself using. “Repeat effect until next note” or sth, removing the need to spam the effect column with the same value over and over again until the next note. I haven’t seen it done as a simple shortcut, but maybe I’m wrong… It can be pretty cumbersome entering all those Axx/Ixx/Oxx commands.

A similar alternative: “Repeat selection”, either for x number of lines or x times.

There’s the native “paste continuously”, but that one is kind of dumb.

Some ideas…


Whenever I try to learn a programming language (or application environment) I look to scratch my own itch.

Following what @joule said, think of something you do fairly often, and where a handy shortcut would be nice.

Something I’ve considered writing: Tool to go through a track-pattern (or the whole track, maybe) and adjust all velocity values by some percent.

I often improvise with a MIDI keyboard and them select stuff I want to keep, but I’ve noticed that often, despite my best efforts, the velocity is too high. I think my keyboard isn’t that sensitive, or my technique is just poor : )

I’ve wanted a way to automate correcting this, as manual editing is tedious and error-prone.

If you’re ambitious: Add an option to do some random delta of the velocity: If the user wants a 30% reduction, with a 2% variance range, then each velocity change will be some random value between 28% and 32%.

Something like this would give you a chance to do a simple(ish) GUI, save previous values, add a keyboard binding for shortcut keys, and so on.

PS I’ve a bunch of stuff here that might have code examples to steal from (as I have done from others):

lua · master · James Britt / Neurogami / renoise-ng · GitLab


hey Mario s’up? :sunglasses:

Waarschijnlijk te ambitieus idee’tje; native clipping tool

Sometimes dealing with samples, you can have spikes in the amplitude that stick out compared to the rest of the waveform making it hard to normalize the sample. You can use the drawtool in the sample editor to manually remove the spike, then normalize, but what if there are a lot of spikes? Other option is to use a vst clipping plugin like Gclip for example on the output or render a clipping vst effect using the fx button in the sample editor (GVST - GClip). Not just handy for restoration, very useful for achieving more loudness as you can truncate a great deal of a sound, then normalize without hearing noticeable artifacts.

Could a native clipper tool be coded in Lua? One slider to determine the upper limit and one slider to determine the lower limit of the waveform and a process button to automatically cut everything above and below these limits, automatically normalizing the output :slight_smile: .


Tnx for the replies and hi @Jonas :slightly_smiling_face: Good to see you here.

I’ve read some serieus interesting input. I’m gonna check what could fit for this small project.

Coming back later here to discuss what my foundings are and what project could fit.

More ideas are still welcome.

1 Like

I have some idea for a tool:

  • A “routing helper” tool: Let’s say you have a send channel to which multiple tracks send audio. If you now context right click on the send, there is an option “Make individual”, so the tool removes the send track, but copies all its dsp to each of the sending tracks, and also takes care of sending / dry/wet amounts. So the result sounds exactly the same, but now each track has the send track’s dsp without anymore using the send device. Then the tool also takes care of sidechain sends and meta devices flow. The tool also makes it possible to select multiple dsp devices in a chain, so only these devices will be copied instead. Also the tool can do the opposite direction, so you choose some devices on a track and context-menu-select “create send track from 3 selected devices”. This actually is a good job for Joule.

  • A “sub templater” tool, which makes it possible to not only save a dsp chain, but also the playing instrument and all affected send tracks (even on second level) at once. So if you start a plain new song, you could simply then load some sub templates like “leet 80s lead” or “that synbass” into your song, and it is already accurately set-up with all send tracks, the correct levels and so on.

  • A “move send” track tool, which can move a send track into a group and then auto setting-up the sidechain device/trackcontrol vst3 combination. Could be part of the first tool.

  • A “crossplatform song loader” tool which adds a menu entry “load crossplatform song”, actually unpacks the .xrns first, replaces plugin-identifers using a (configurable) table, then packs it under “song-xy-patched.xrns” and then loads it.

This all IMHO should be part of the Renoise core functionality, but I doubt this will ever happen. Also those tools could be done way more easily, if there was a real object oriented abstraction of the whole track/dsp lua api. Same for the notes.