< Back to IRCAM Forum

Timebloc scaling – using mapcar

Hi all, happy new year.

I’m trying to utilize Karim’s timebloc techniques, by scaling timeblocs by the proportions of the timebloc itself. How do I get the patch to scale each element, to put into a poly?
timebloc from fractions.omp (12.2 KB)


Dear Hamish,

No need for a special function. This is just multiplication of time signature. Here is a patch that replicates the operation:

And here the patch:

multiplication.omp (29.2 KB)

Best
K

Thank you, Karim; this is great.

Is there a way to determine the duration of the timebloc manually, and have the proportions scale to that?
So, I have a string of durations [5/14 – 25/30 – 1950/2349], which scales to 15/4? Does this make sense?

Best wishes,
Hamish

Do you mean this?:
Screenshot_2026-01-23_12-08-33

multfact.omp (2.7 KB)

best
K

Ah, not quite.

I have a section duration of 19 quarter-notes, and I need a timebloc of [x, y, z, a] to fill that space.

Does this help? I’m sorry I’m struggling to articulate this :sweat_smile:

Best wishes, and many thanks
Hamish

Ok, got it.

It is possible. But…

Is this what you intent to do?
If yes, will send some extra code.
But as you can see, you will end up with a very crazy rhythm…

Best
K

Dear Karim,

Yes, I think so! Is there a way to make the ‘unit’ timebloc (i.e., the section of 19/4 adjustable? So I can have the same timebloc then fit into the following sections of 123/15, 22/2 etc.

As for the crazy rhythm, omkant is my friend… :wink:

Best,

Hamish

Ok here it is:


proptots.omp (18.8 KB)

Now for your last question, sorry, can you be more precise? what do you mean by “adjustable” ?

BEst
K

1 Like

Many thanks, Karim!

In terms of it being adjustable, is there a way to make the same proportions fit into each of the timeblocs in the first voice object (( 5 14) (5 6) (650 783)), and display as a poly?

H

How also did you create the (19 4) timebloc? Is there a way that the input into the voice can just be text?


I seem to have run into another problem (testing with different proportions): the final voice object does not add up to 19 quarter-notes?

Many thanks again,

Hamish

Essentially, I am looking to make a patch where I input a series of proportions (even a ratio, i.e. 4:6:2.6:49.16, but preferably fractions), and a total duration, and have that duration be divided into the proportions provided.

This has taken me many years to articulate :sweat_smile:

Best,
H

Dear Hamish,

Here is mostly a draft for your patch:

proptots 2.omp (31.0 KB)

Concerning the quantify part, there is an old bug in om/omng-quantify:
Sometimes it adds or crops the last duration. This depends on the time signature it is given. It should therefore be fixed. In the above patch, you may have a solution to bypass the problem.

Best Regards.

K

Ah yes – many thanks, Karim!

Apologies, but is it also practicable to have a poly where the timeblocs subdivide in upon themselves? i.e. 5/3 45/32 5/4 in the space of the breve in the 63:76 tuplet, then 5/3 45/32 5/4 in the dotted semibreve, dotted eighth-note etc.

Many thanks again for all that you do, and best wishes,

Hamish

Yes it is possible. However, you should first subdivise the 63/76 Timebloc

Ok. Is it a matter of copy & paste the functions from the first timebloc string voice (the 5/3 45/32 5/4 one) to the 19/4 timebloc? Does one need an om-loop to rotate all of those subdivisions into a poly?

No it is not a copy/paste operation. You will need an omloop. But first you need to work first with this form of voice:
Screenshot_2026-01-27_10-07-15

Then take the first measure (5 3) and explicitly subdivide it into (4 1) proportions, since it is in reality one duration, but represented symbolicaly as (4 1.0) figures.

Then do the subdivision process again with omloop.

Will show you how to do so once i get some spare time

Best
K