Week 1 lesson 3 - sequencing with the mini-notation

thanks for the pointer. i got the plugins from the github page and included them in the xtensions folder, but couldn't recompile class library properly... i wonder what is wrong. i'll put the SC console log in the other post. :slight_smile:

They're supposed to disable the sounds on periodic base

-0 would be played once every 2 rounds
-1 would be played once every 3 rounds

/ is quite practical!

It's more than steps are 'slowed down' with / - check the latest lesson for details

1 Like

watching now, thanks for clearing this out

It is interesting you mention that because that surprises me a little. In the tutorial, things are also presented that way : / "slows down" a "part of a pattern", which sounded a bit weird to me - here you're saying the step is "slowed down". I don't really understand what it means for a step to me "slowed down" (but you used quotes so that must be for some reason !). But anyway, in my experience, it seems that, as @gnozo had it,
" bd bd/3 bd" does exactly the same as "bd <bd ~ ~> bd".
isn't it the case ?

On the same topic, there is something that seems misleading in the tutorial. When it comes to explaining the * it says that it repeats a pattern (a step or steps ?), and illustrates this by saying that d1 $ sound "bd * 2" is the same as doing d1 $ sound "bd bd" . But what d1 $ sound "bd*2" actually does is d1 $ sound "[bd bd]", right ? And though it is true that, in this particular instance, both will sound the same, it's not true generally.

It slows down the step, so the first time around, bd/3 would give the first third of the event. The trigger message gets sent at the start, so you hear it then. The next two times you get the second and third part o fthe event. There's no trigger message for those.

If / isn't clear by the end of week 1 lesson 4, let me know! https://club.tidalcycles.org/t/week-1-lesson-4-mini-notation-part-2/

And yes you're right, "bd*2" is better compared with "[bd bd]"

Oh I hadn't seen the new video. Thanks for the explanation ! Pretty cool whats happening when you multiply or divide by non integers, the event position is kinda sliding it seems :grinning:

maybe these visualisations could explain better * and / (assuming they are correct @yaxu)

d1 $ s "kick*2"
d2 $ s "clap"

d1 | kick kick | kick kick | ...
d2 | clap      | clap      | ...
d1 $ s "kick kick"
d2 $ s "clap"

d1 | kick kick | kick kick | ...
d2 | clap      | clap      | ...
d1 $ s "[kick kick]"
d2 $ s "clap"

d1 | kick kick | kick kick | ...
d2 | clap      | clap      | ...
d1 $ s "kick/2"
d2 $ s "clap"

d1 | kick      |           | ...
d2 | clap      | clap      | ...
d1 $ s "kick [kick kick]"
d2 $ s "clap"

d1 | kick        kick kick | kick        kick kick | ...
d2 | clap                  | clap                  | ...
d1 $ s "kick [kick/2 kick]"
d2 $ s "clap"

d1 | kick        kick kick | kick             kick | ...
d2 | clap                  | clap                  | ... 
6 Likes

Yes looks good to me!

(Strangely enough, I'm working on a function that draws these kinds of diagrams for you..)

7 Likes

They were helpful in the video (and also in text like this).

Coming back to the "transpose" discussion. I want to transpose a whole phrase like
d1 $ fast 1 $ note "[c3 <c4 d4 ds4 d4>]" # s "arpy"
and it works with
d1 $ fast 1 $ note "[c3 <c4 d4 ds4 d4>]" # s "arpy" # n "2"
But how can I do it only every fourth time?
d1 $ fast 1 $ note "[c3 <c4 d4 ds4 d4>]" # s "arpy" # n "0 0 0 2"
doesn`t work nor

d1 $ fast 1 $ every 4 (# n "2") $ note "[c3 <c4 d4 ds4 d4>]" # s "arpy"

at the end I found this solution which seems to be a bit weird for me :wink:

d1 $ fast 4 $ note "[c3 <c4 d4 ds4 d4>]" # s "arpy" # n (range 0 2 $ slow 32 square)

You're mixing note and n here. For samples, note will pitch a single sample up in semitones by changing the playback rate. n will pick a different samples. arpy is a samplebank with pentatonic samples so the results will be a bit strange.

You probably want to use note all the time, but to actually do the adding you'll need to use |+ note rather than # note.

You could then do every 4 (|+ note 2), or just put |+ note "<0 0 0 2>" on the end.

I like the solution with the square wave though :slight_smile:

You're totally right! I normally work with my own samples which are not tuned like arpy all in in one folder.
We'll meet tomorrow morning in your live streaming.
The first week is already a big success! Amazing concept. I like the way you're teaching! Thanks @yaxu

I found this by mistake while creating melodic lines with my own sample banks where I usually have one sample per octave, or one sample per fifth but not for each degree.
Though I think the combination of both n and note leads to very, very weird melodic structures - especially when you drive the choice of the sample with something like n (scale "scriabin" "0 4 5").
Wrong to some extent, but fascinating.

1 Like

Blockquote It slows down the step, so the first time around, bd/3 would give the first third of the event. The trigger message gets sent at the start, so you hear it then. The next two times you get the second and third part of the event. There's no trigger message for those.

So would another way to visualize it would be to imagine this operation on [bd*6]/3 where it would slow the pattern down to play 2 triggers per cycle? am I picturing that right?

Yep [bd*6]/3 would have the same result as bd*2

I just made my most satisfying pattern to date thanks to this lesson. It's been helpful learning about the ways things like <> and / * work. These really open up the possibilities.
Have a go with this it's super fun:

setcps 0.3

d1 $ iter 2 $ fast "{23 42}/4" $ every 2 (jux (iter 2)) $ n "8 [2 [<2 3 10 6>] 2 3]/2 <5 2> 14" +|
sound " bd*<1 2 4 , 1 4 1.5> cpu [8]/< 4 2 1.333 8> cpu " "<1 2 13 2 3>" #
note " "/4

I have tried to run your code doesn't work though