# Week 5 lesson 1 - musical notes

**URL:** <https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891>\
**Category:** Week 5 - notes, chords, arpeggios and Algoraoke\
**Created:** [16 May 2020 21:30 UTC](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891 "2020-05-16T21:30:32Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![yaxu](https://uzu.lurk.org/user_avatar/uzu.lurk.org/yaxu/32/2_2.png) [@yaxu](https://uzu.lurk.org/u/yaxu)\
**Post date:** [16 May 2020 21:30 UTC](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891/1 "2020-05-16T21:30:33Z")

</div>

Ok we're back with a surprisingly long video about how to play notes, giving them as numbers or names, and controlling samples and synths.. With a sidetrack about how to look at the actual values inside (the first cycle of) a pattern.

[![](https://img.youtube.com/vi/ZtCx-YMrwVU/maxresdefault.jpg "[TidalClub] Week 5 lesson 1 - musical notes") ](https://www.youtube.com/watch?v=ZtCx-YMrwVU)

- [0:50](https://www.youtube.com/watch?v=ZtCx-YMrwVU&t=50s) - how to look at event values in the first cycle
- [2:26](https://www.youtube.com/watch?v=ZtCx-YMrwVU&t=146s) - floating point note values - playing between the notes
- [3:36](https://www.youtube.com/watch?v=ZtCx-YMrwVU&t=216s) - looking at the timespan of an event
- [5:43](https://www.youtube.com/watch?v=ZtCx-YMrwVU&t=343s) - sc3plugins - needed for playing synths (if the synths work fine, you have this installed already)
- [6:14](https://www.youtube.com/watch?v=ZtCx-YMrwVU&t=374s) - writing notes as the letters "a" to "g" in mininotation \* [7:33](https://www.youtube.com/watch?v=ZtCx-YMrwVU&t=453s) - using qtrigger to play a sequence from the start
- [8:54](https://www.youtube.com/watch?v=ZtCx-YMrwVU&t=534s) - note letters are really numbers
- [9:12](https://www.youtube.com/watch?v=ZtCx-YMrwVU&t=552s) - sharps and flats
- [11:26](https://www.youtube.com/watch?v=ZtCx-YMrwVU&t=686s) - octaves in note names (e.g. c6, e4)
- [14:09](https://www.youtube.com/watch?v=ZtCx-YMrwVU&t=849s) - difference between 'note' and 'n' for synths and samples
- [19:13](https://www.youtube.com/watch?v=ZtCx-YMrwVU&t=1153s) - mixing 'note' and 'n' when using samples
- [19:36](https://www.youtube.com/watch?v=ZtCx-YMrwVU&t=1176s) - using sets of recorded note samples, e.g. the 'rash' sample set
- [22:55](https://www.youtube.com/watch?v=ZtCx-YMrwVU&t=1375s) - the difference between pitching up a single sample, and patterning a set of samples of different recorded notes
- [25:19](https://www.youtube.com/watch?v=ZtCx-YMrwVU&t=1519s) - using the 'octave' control

Here's the worksheet:

```haskell
-- If you 'run' a pattern by itself, without a 'd1' or so, then Tidal
-- will do its best at telling you what's in the first cycle. For
-- example:

note "3"

-- gives:

-- (0>1)|note: 3.0f

-- 0>1 tells you it's an event that starts at position 0 (the start of
-- the first cycle) and lasts up to 1 (the start of the next cycle).
-- note is the name of the 'control' or 'effect' 3.0f is the value
-- ('f' tells you that it's a floating point, decimal number).

note "3 ~ 5"

-- the above gives two events:

-- (0>⅓)|note: 3.0f
-- (⅔>1)|note: 5.0f

-- We can listen to them:

d1 $ note "3 ~ 5" # s "superpiano"

-- Great notes!

-- (.. if you don't hear any, you probably need to install "sc3plugins".)

-- Tidal can also understand note names, and turn them into numbers
-- for you.

-- For example 'c' is the same as '0'

note "c"

-- This:

note "a b c d e f g"

-- is the same as:

note "9 11 0 2 4 5 7"

-- What happened to 1, 3, 6, 8, and 10?
-- You can get to them by adding 's' for 'sharp', to add 1 to a note:

note "cs ds fs gs as"

-- or by using 'f' for 'flat' to subtract 1:

note "df ef gf af bf"

-- In theory, you can get to them all via really sharp 'c'
-- notes. These two notes are identical:
d1 $ note "csssssss g" # s "superpiano"

-- In practice, that surely doesn't make a lot of sense.

-- Normally, there are twelve notes in an octave. The default octave
-- is 5, you can pick notes from other octaves by adding a different
-- number:
note "c5 c6 c4 c6"

-- Lets have a listen
d1 $ note "c5 c6 c4 c6" # s "superpiano"

-- Lets think about the difference between 'note', 'n', synths and
-- samples.

-- There is no folder of samples called 'superpiano', the sounds you
-- hear are being synthesised on-the-fly.

-- With synths, you can use either 'note' or 'n' to specify notes,
-- they mean the same thing.

d1 $ n "c a f e" # s "superpiano"

d1 $ note "c a f e" # s "superpiano"

-- For samples, they mean something different. 'n' chooses a sample,
-- 'note' plays it at a different speed, corresponding to a note.

-- Different sounds:
d1 $ n "0 1" # sound "dsynth"

-- Different notes:
d1 $ note "0 1" # sound "dsynth"

-- If you pick a high note, then you'll notice the sound is a lot
-- shorter, because it's making it higher by playing it faster.
d1 $ note "0 24" # sound "dsynth"

-- You might feel that's not good, because it doesn't sound as natural
-- as a synthesiser
-- You might feel that's great, because nature is a myth and this is
-- how old school 'tracker' music from early rave music and the
-- demoscene works
-- You might change your mind on different days

-- You can still use note names in mininotation:
d1 $ note "c a f e" # sound "dsynth"

-- (Actually you can use do this in any control/effect pattern that
-- expects a number.. Tidal just treats them as numbers)

-- This dsynth sample is in 'c'. If it wasn't, the notes would
-- probably sound out of tune with another synth or samplebank.

-- The 'dbass' sample has three bass sounds, again in 'c', of
-- different lengths. So it makes sense to use *both* 'note' and 'n'
-- together, to pattern both the pitch and the sample that's used:
d1 $ note "c a f e" # sound "dbass" # n "<0 1 2>"

-- The 'rash' samplebank is organised differently.. There's a load of
-- samples, one for each note of 6 octaves. There's 12 notes in an
-- octave, so that's 72 samples. (actually there's 73, there's an
-- extra one note-084.wav which you could delete..) I sampled these
-- from my lovely Roland JV1080 synth.

-- So you can play notes as numbers using the 'n' instead of the
-- 'note' pattern. This sounds a bit more 'natural' than pitching them
-- up with 'note'.
d1 $ n "20 50" # sound "rash"

-- You can still use note names, but whereas for synths '0' is *middle*
-- c, with these samples that's right at the *bottom* of the scale.
d1 $ n "c a f e" # sound "rash"

-- So in this case you'll want to pick a higher octave
d1 $ n "c7 a7 f8 e7" # sound "rash"

-- I tend to add a few octaves like this:
d1 $ n "c a f e" # sound "rash"
  |+ n 24

-- Adding notes together is fun :
d1 $ n "c a f e" # sound "rash"
  |+ n 24
  |+ n "<0 2 7 12>"

-- You can also do it this way, adding together number patterns
-- 'inside' a single control pattern
d1 $ n ("c a f e" |+ 24 |+ "<0 2 7 12>")
  # sound "rash"

-- There's also an 'octave' control to jump up/down in twelves:
d1 $ note "c a f e" # sound "superpiano"
  # octave "<4 6 3>"

```

---

<div class="post-metadata">

**Author:** ![yaxu](https://uzu.lurk.org/user_avatar/uzu.lurk.org/yaxu/32/2_2.png) [@yaxu](https://uzu.lurk.org/u/yaxu)\
**Post date:** [16 May 2020 21:33 UTC](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891/2 "2020-05-16T21:33:55Z")

</div>

Follow-on video coming soon, and fair warning - I sing in the next one.

---

<div class="post-metadata">

**Author:** ![yaxu](https://uzu.lurk.org/user_avatar/uzu.lurk.org/yaxu/32/2_2.png) [@yaxu](https://uzu.lurk.org/u/yaxu)\
**Post date:** [16 May 2020 22:26 UTC](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891/3 "2020-05-16T22:26:53Z")

</div>



---

<div class="post-metadata">

**Author:** ![tedthetrumpet](https://uzu.lurk.org/user_avatar/uzu.lurk.org/tedthetrumpet/32/39_2.png) [@tedthetrumpet](https://uzu.lurk.org/u/tedthetrumpet)\
**Post date:** [17 May 2020 15:25 UTC](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891/4 "2020-05-17T15:25:44Z")

</div>

is `up` the same as `note`?

---

<div class="post-metadata">

**Author:** ![yaxu](https://uzu.lurk.org/user_avatar/uzu.lurk.org/yaxu/32/2_2.png) [@yaxu](https://uzu.lurk.org/u/yaxu)\
**Post date:** [17 May 2020 15:27 UTC](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891/5 "2020-05-17T15:27:05Z")

</div>

Yes sorry this is something I meant to mention. `note` is the new `up`. The latter is now just an alias for the former.

---

<div class="post-metadata">

**Author:** ![cleary](https://uzu.lurk.org/user_avatar/uzu.lurk.org/cleary/32/177_2.png) [@cleary](https://uzu.lurk.org/u/cleary)\
**Post date:** [17 May 2020 19:43 UTC](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891/6 "2020-05-17T19:43:16Z")

</div>

Thanks Alex!  
I seem to be missing the dbass sample though - is that something I can get hold of?

---

<div class="post-metadata">

**Author:** ![yaxu](https://uzu.lurk.org/user_avatar/uzu.lurk.org/yaxu/32/2_2.png) [@yaxu](https://uzu.lurk.org/u/yaxu)\
**Post date:** [17 May 2020 20:00 UTC](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891/7 "2020-05-17T20:00:39Z")

</div>

Ah sorry! I'll add them to the samples-extra zip later, but in the meantime you can get them here [https://slab.org/tmp/dbass.zip](https://slab.org/tmp/dbass.zip)

---

<div class="post-metadata">

**Author:** ![geikha](https://uzu.lurk.org/user_avatar/uzu.lurk.org/geikha/32/2701_2.png) [@geikha](https://uzu.lurk.org/u/geikha)\
**Post date:** [18 May 2020 13:18 UTC](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891/8 "2020-05-18T13:18:36Z")

</div>

About the difference between sharps and flats you mentioned, there are two main reasons:

_Ignore this post if you don't care about western music theory_

1. The historical one: Before equal temperament (tuning system based on having every note equally spread across an octave), when humans used the just intonation tuning system (based on the simplicity of ratios), sharps and flats were different frequencies. You can find more info on this [here](https://www.youtube.com/watch?v=tGEXJe3px68)

2. The descriptive one: If you play an F major chord ( **F-A-C** ), and you turn it into a minor chord, you would pitch the A -1 semitone, making it **F-Ab-C**. Calling it **F-G#-C** is kinda like throwing something out of nowhere. The same happens with scales but even more so, for convention and easy scale recognition, you wouldn't have the F major scale described as **F-G-A-A#-C-D**. You are having two A's in the same scale, it can be confusing to repeat notes, so we say it's **F-G-A-Bb-C-D**. This is also why sometimes using a scale with flats or sharps, when you get off the scale playing the regular counterpart of one of those flat notes, you will see it marked as a 'natural' in a music sheet.

But anyway, if you're not interested in documenting your music in music sheets, or don't play classical or jazz or related genres, you don't have to really care about this.

---

<div class="post-metadata">

**Author:** ![Bryan\_Green](https://uzu.lurk.org/user_avatar/uzu.lurk.org/bryan_green/32/480_2.png) [@Bryan\_Green](https://uzu.lurk.org/u/Bryan_Green)\
**Post date:** [19 May 2020 21:18 UTC](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891/9 "2020-05-19T21:18:29Z")

</div>

For anyone not aware, the 'rash' samples (and many others) are included in this repo:

> **[GitHub - yaxu/spicule](https://github.com/yaxu/spicule)**
>
> Contribute to yaxu/spicule development by creating an account on GitHub.

(in the 'extra-samples' folder)

Bryan

---

<div class="post-metadata">

**Author:** ![yaxu](https://uzu.lurk.org/user_avatar/uzu.lurk.org/yaxu/32/2_2.png) [@yaxu](https://uzu.lurk.org/u/yaxu)\
**Post date:** [19 May 2020 21:22 UTC](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891/10 "2020-05-19T21:22:34Z")

</div>

Those samples are ones I've collected for an album project.

All the additional samples needed for the course examples should be in the samples-extra.zip shared in this lesson:  
[Week 1 lesson 2 - Loading sample packs](https://club.tidalcycles.org/t/week-1-lesson-2-loading-sample-packs/341)

---

<div class="post-metadata">

**Author:** ![mattia.paterna](https://uzu.lurk.org/user_avatar/uzu.lurk.org/mattia.paterna/32/112_2.png) [@mattia.paterna](https://uzu.lurk.org/u/mattia.paterna)\
**Post date:** [20 May 2020 13:33 UTC](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891/11 "2020-05-20T13:33:52Z")

</div>

Just a fun fact: the letter **H** was mainly used in the German naming convention (adopted by Germany, Austria and Nordic countries) to indicate the natural **B** note, whereas **B** was used for _B flat_.  
As example, the [BACH motif](https://en.wikipedia.org/wiki/BACH_motif) had been composed (by Bach himself) on this old notation.

---

<div class="post-metadata">

**Author:** ![yaxu](https://uzu.lurk.org/user_avatar/uzu.lurk.org/yaxu/32/2_2.png) [@yaxu](https://uzu.lurk.org/u/yaxu)\
**Post date:** [20 May 2020 15:04 UTC](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891/12 "2020-05-20T15:04:02Z")

</div>

Thanks I'm learning a lot about music theory this week!

---

<div class="post-metadata">

**Author:** ![yaxu](https://uzu.lurk.org/user_avatar/uzu.lurk.org/yaxu/32/2_2.png) [@yaxu](https://uzu.lurk.org/u/yaxu)\
**Post date:** [7 June 2020 11:49 UTC](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891/13 "2020-06-07T11:49:00Z")

</div>

A post was merged into an existing topic: [Week 7 Lesson 3 - Composing tracks with the 'ur' function](https://uzu.lurk.org/t/week-7-lesson-3-composing-tracks-with-the-ur-function/1340/11)

---

<div class="post-metadata">

**Author:** ![boastmodernist](https://uzu.lurk.org/user_avatar/uzu.lurk.org/boastmodernist/32/1994_2.png) [@boastmodernist](https://uzu.lurk.org/u/boastmodernist)\
**Post date:** [15 December 2020 14:40 UTC](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891/14 "2020-12-15T14:40:37Z")

</div>

I noticed that |+ is equivalent to transposition if applied to 'note', so naturally I'm wondering if there's a quick notation for inversion, where the n pattern

n "0 3 4 5" becomes n "0 -3 -4 -5"

or n "3 6 -2 3" becomes n "3 0 8 3"

---

<div class="post-metadata">

**Author:** ![chrislo](https://uzu.lurk.org/user_avatar/uzu.lurk.org/chrislo/32/1378_2.png) [@chrislo](https://uzu.lurk.org/u/chrislo)\
**Post date:** [31 December 2020 16:18 UTC](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891/15 "2020-12-31T16:18:19Z")

</div>

I've been trying to write some code to play random notes chosen from a scale with a euclidean rhythm, but I've got stuck. Here's what I have so far:

```haskell
d2 $ struct "t(3,8)" $ note (scale "minor" "[0|1|3|4]") # s "arpy"

```

But that just seems to choose a single note from the scale and then play it 3 times in a `3,8` rhythm before choosing another. I'd like each note to be chosen from the list of notes. I've tried using `choose` but `scale` returns a pattern, and `choose` needs a list. Any ideas?

---

<div class="post-metadata">

**Author:** ![TSC67](https://uzu.lurk.org/letter_avatar_proxy/v4/letter/t/7feea3/32.png) [@TSC67](https://uzu.lurk.org/u/TSC67)\
**Post date:** [31 December 2020 16:48 UTC](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891/16 "2020-12-31T16:48:53Z")

</div>

> [@chrislo](#):
>
> `d2 $ struct "t(3,8)" $ note (scale "minor" "[0|1|3|4]") #`

The following works, but maybe gives too much control over the random element?

`d1 $ struct "t(3,8)" $ note (scale "minor" "0 [1|4] [12|7]") # s "midi" # midichan 0`

---

<div class="post-metadata">

**Author:** ![yaxu](https://uzu.lurk.org/user_avatar/uzu.lurk.org/yaxu/32/2_2.png) [@yaxu](https://uzu.lurk.org/u/yaxu)\
**Post date:** [31 December 2020 16:51 UTC](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891/17 "2020-12-31T16:51:51Z")

</div>

> [@chrislo](#):
>
> `d2 $ struct "t(3,8)" $ note (scale "minor" "[0|1|3|4]") # s "arpy"`

Yes the `[|]` notation chooses one value per cycle. This should do it:

```haskell
d2 $ struct "t(3,8)" $ note (scale "minor" $ choose [0,1,3,4]) # s "arpy"

```

---

<div class="post-metadata">

**Author:** ![chrislo](https://uzu.lurk.org/user_avatar/uzu.lurk.org/chrislo/32/1378_2.png) [@chrislo](https://uzu.lurk.org/u/chrislo)\
**Post date:** [31 December 2020 20:24 UTC](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891/18 "2020-12-31T20:24:11Z")

</div>

That's great, thank you both for your help!

---

<div class="post-metadata">

**Author:** ![Dmitrij\_Shum](https://uzu.lurk.org/user_avatar/uzu.lurk.org/dmitrij_shum/32/2795_2.png) [@Dmitrij\_Shum](https://uzu.lurk.org/u/Dmitrij_Shum)\
**Post date:** [13 January 2024 19:00 UTC](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891/19 "2024-01-13T19:00:21Z")

</div>

Hi. How do you use more than 12 notes in an octave for microtonal music?

---

<div class="post-metadata">

**Author:** ![yaxu](https://uzu.lurk.org/user_avatar/uzu.lurk.org/yaxu/32/2_2.png) [@yaxu](https://uzu.lurk.org/u/yaxu)\
**Post date:** [14 January 2024 17:49 UTC](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891/20 "2024-01-14T17:49:53Z")

</div>

You can use supercollider tunings: [https://github.com/musikinformatik/SuperDirt/blob/develop/hacks/pitch-model-from-tidal.scd](https://github.com/musikinformatik/SuperDirt/blob/develop/hacks/pitch-model-from-tidal.scd)

Or you can also just use decimal numbers, e.g. `n "40.25" # s "supermandolin"`

The latter doesn't work with all synths (like superpiano)

see you

[Next page](https://uzu.lurk.org/t/week-5-lesson-1-musical-notes/891.md?page=2)
