New Tool (3.4) genpad - euclidean | chorder | bars | glider

OK, so the main issue I’m seeing with this is the inability to subdivide the beat value. Ideally we should be able to subdivide by any value that the lpb allows for, to create (for example) 7/8 or 13/16 rhythms
So if LPB is divisible by four, beats should be able to go down to .5 and .25 and .125 even
If LPB is divisible by 5 Beats should be able to be .2, .4, .6, .8
and so on and so forth
As it stands, if you’re working at 16 LPB with four beats as 4/4 time, there isn’t an easy way with this tool to switch to, say, 3/8 or 7/8 time. Unless, of course, I’m missing something obvious.

You could make up for this by changing the bpm as well, of course, but that would have impacts on delay times, repeater values, etc. so isn’t really a viable workaround imo

Ouch, I thought people would do 7/8 with 7 beats instead of 3.5. but I see how the bpm would be messed up.

On the other hand setting .5 beats sounds a bit confusing, and you’d still have to calculate what LPB and fraction you need, to achieve some odd meter. Maybe it can be helped a bit by displaying for example “+ 3/5” instead of “.6”?

So if you’d hold down Shift while setting a value, the beats would step through all available fractions like that? Like for 12 LPB it would display x beats + “1/4, 1/3, 1/2, 2/3, 3/4”.

That said this would mean that you couldn’t really do more than 1 bar in a pattern nicely, right? Because the second bar would start from the middle of the beat and everything would be shifted (highlight-wise) a half-beat ahead (in the case of 7/8).

1 Like

Yeah, the highlighting suffers when you drop to x/8 or x/16 that’s why I was wondering if the API could access it

I wonder if the more elegant solution for divisors would be to have beats as you already do, then have a divisor value parameter as well that can flash a little warning sign when it doesn’t fall evenly within the LPB value :warning:

Like a traditional time signature with numerator and denominator but more flexible

But idk, what you suggest with fractions would also work great :smiley:

But even if we could set the highlight it couldn’t highlight beats like 3.5, only bars. I guess I could write “mark lines” in the master column at each bar/beat as a hint something like XX00 when creating a new pattern :melting_face:

About warnings, I’d like to keep the dialog behave in a way that there is no ambiguity and you can’t set things that can’t be expressed as a pattern. Which is why currently it will lock you to always stay below 513 lines as 512 is the max length, no matter which setting you tweak.

Adding time signature-like setting could be possible with more work. I guess the general problem is Renoise in some sense is less flexible (or different) when it comes to expressing beat values because you can’t just divide things down freely but instead have to work from the limitations of LPB, setting a high enough LPB to be able to express more beat values becomes unwieldy fast, like 60 LPB to have triplets, quintuplets and eighth notes in the same pattern?

I was thinking along the lines of having a time signature (with the denominator fixed to multiples of 4) and it would restrict you to values of LPB that could be divided without a fractional remainder given your numerator, so the LPB setting would be like a resolution: at the lowest it would make the time signature possible and as you step it up, you get more and more lines between each beat.

Ps I guess just using 7 beats for 7/8 would be better even with the doubled BPM but unfortunately that won’t work at all because you can only write a maximum of 255 BPM into the pattern so anything above 122 BPM would be off-limit.

1 Like

I’m sure whatever you choose to implement will be good :slight_smile:

personally, I’m all for maximum flexibility, and I’m used to the line accents not necessarily accurately reflecting beat values for x/8 or x/16. So I’d love to see a system where any LPB value can be used, and divisors for that, when it can be cleanly divided. There are other tools (ie place selected notes evenly) for n-tuplets, so I’m not worried about that personally, and almost always work at 16 LPB these days unless I want to get really intentionally off kilter with a 7 or 9 or 15, etc LPB value. Still it would be great to preserve the maximum in flexibility for generating new rhythmic structures within the confines of the software and API

I appreciate you dialoging on this! And especially appreciate you taking the time to make these tools that make renoise better for everyone

version 0.3.1 fractional beats :musical_score:

Based on the discussion with @slujr above, I’ve added the ability to pick fractional beats in bars. I went with allowing fractions to be selected for the beats value because it was easier to implement and it offers more flexibility than picking a time signature would (at the cost of the user having to do a bit of math to figure out the solution to some odd meter). I believe this less “music-theory-y” approach might lead to more experiments that don’t come from preconceptions about odd meters in western music theory.

That said I might still add a separate mode later on that lets you pick time signature directly as well.

Below I paste the relevant addition from the manual that explains the new functionality and summarizes the limitations of using it.

odd meters and fractional beats

In case you wanted to use fractional beats (like 3.5 to achieve a 7/8 rhythm while keeping beats as quarter notes), you can hold down Shift while stepping the beats parameter. This lets you to pick from all proper fractions based on the selected LPB value.

If you want to know what fraction you need to achieve a certain time signature, you can divide your beat value (the denominator in the time signature) by 4, then divide your beats (from the time signature) by the result.

For example to solve for 7/8

Quarter = 8 / 4 = 2
Beats = 7 / Quarter = 3.5

So you’d pick 3 + 1/2 for beats.

Or for 13/16

Quarter = 16 / 4 = 4
Beats = 13 / Quarter = 3.25

Gets you 3 + 1/4 for beats.

Unfortunately, your line highlight in these cases will be disconnected from the actual beats after the first bar. One workaround is to set the Pattern highlight in your Song Options to the length of your bar or to only use patterns containing a single bar.

You could also just set the number of beats based on the numerator in your time signature (for example 7 for 7/8) but then you’d also need to double your BPM if you wanted to keep quarter notes as 1 beat. Unfortunately the ZT command to set the tempo only allows for BPMs up to 255, so if you do this you will not be able to change tempo mid-song and whatever effect you use that relies on BPM will have to be adjusted accordingly.

3 Likes

This is very exciting! Looking forward to testing it out :grin:

EDIT: finally got a chance. Bars is fantastic, thank you!!!
I hope lots of people check this out, especially breakcore, experimental, idm, and glitch artists using renoise will benefit immensely from the great ease of use this tool provides for creating unusual rhythmic structures. really excellent.

1 Like

version 0.4.1 new pad

Born from a request from @icasiino :1st_place_medal: - the first and only donator to my tools :hugs: - I present this humble addition to the available pads:

glider :ice_cube:

glider

A pad that generates glide commands (-Gxx) that arrive at your note in a desired number of lines. You need to launch it from a note that has a previous note in the pattern and the pad will fill up the sample FX column with the calculated glide commands.

parameters

  • lines - how many lines should the glide take up (between 1 and the length of the note)
  • steps - how many steps to distribute the necessary glides onto (by default this is the same as lines, when lowered, an euclidean pattern will be used for equal distribution)
  • remainder - often the exact glide value needed is not divisible by the number of lines you select (which is why there is always a -GFF inserted at the end of glides), you can choose to spread the remainder across steps or drop it. The effects of the choice won’t be audible in most cases, but drop is there if you want the glide to be completely uniform.

usage

The pad will have different start settings depending on where you are launching it from (you can still change the settings while it’s open of course)

  • From the exact line of the note you want to glide: it will cover the entire duration of the note
  • Further down from inside the note: it will glide until that line

While this tool is rather simple in scope and features, it is not considered finished, ideas towards improvement are welcome!

download genpad or find the source and other links at the top.

5 Likes

This is awesome bro!!! Thanks for this :sunglasses:

1 Like

This imo most definitely should be implemented in to renoise

1 Like

I suppose the “native way” could just as well be to have a separate single command that glides to a note it is applied to in xx lines.

1 Like

cool, reminds me of Joules slide to next note; https://forum.renoise.com/t/new-tool-2-7-2-8-slide-to-next-note/

Oh nice thanks, I should’ve checked the forum before doing it I guess.

That said it seems to be for earlier versions of Renoise, not sure it still works.

not sure either, I think I’ve manually updated the manifest in the past if the auto updating didn’t work, but can’t remember if it was with this script. It worked differently though, you hit a keyboard shortcut and the glide is automatically calculated wherever you have the cursor in between notes.