1--- 2title: Recap 3layout: ../../layouts/MainLayout.astro 4--- 5 6import { MiniRepl } from '../../docs/MiniRepl'; 7 8# Workshop Recap 9 10This page is just a listing of all functions covered in the workshop! 11 12## Mini Notation 13 14| Concept | Syntax | Example | 15| ----------------- | -------- | --------------------------------------------------------------------- | 16| Sequence | space | <MiniRepl client:visible tune={`sound("bd bd sd hh bd cp sd hh")`} /> | 17| Sample Number | :x | <MiniRepl client:visible tune={`sound("hh:0 hh:1 hh:2 hh:3")`} /> | 18| Rests | ~ | <MiniRepl client:visible tune={`sound("metal ~ jazz jazz:1")`} /> | 19| Sub-Sequences | \[\] | <MiniRepl client:visible tune={`sound("bd wind [metal jazz] hh")`} /> | 20| Sub-Sub-Sequences | \[\[\]\] | <MiniRepl client:visible tune={`sound("bd [metal [jazz sd]]")`} /> | 21| Speed up | \* | <MiniRepl client:visible tune={`sound("bd sd*2 cp*3")`} /> | 22| Parallel | , | <MiniRepl client:visible tune={`sound("bd*2, hh*2 [hh oh]")`} /> | 23| Slow down | \/ | <MiniRepl client:visible tune={`note("[c a f e]/2")`} /> | 24| Alternate | \<\> | <MiniRepl client:visible tune={`note("c <e g>")`} /> | 25| Elongate | @ | <MiniRepl client:visible tune={`note("c@3 e")`} /> | 26| Replicate | ! | <MiniRepl client:visible tune={`note("c!3 e")`} /> | 27 28## Sounds 29 30| Name | Description | Example | 31| ----- | --------------------------------- | ----------------------------------------------------------------------- | 32| sound | plays the sound of the given name | <MiniRepl client:visible tune={`sound("bd sd")`} /> | 33| bank | selects the sound bank | <MiniRepl client:visible tune={`sound("bd sd").bank("RolandTR909")`} /> | 34| n | select sample number | <MiniRepl client:visible tune={`n("0 1 4 2").sound("jazz")`} /> | 35 36## Notes 37 38| Name | Description | Example | 39| --------- | ----------------------------- | --------------------------------------------------------------------------------- | 40| note | set pitch as number or letter | <MiniRepl client:visible tune={`note("b g e c").sound("piano")`} /> | 41| n + scale | set note in scale | <MiniRepl client:visible tune={`n("6 4 2 0").scale("C:minor").sound("piano")`} /> | 42| $: | play patterns in parallel | <MiniRepl client:visible tune={'$: s("bd sd")\n$: note("c eb g")'} /> | 43 44## Audio Effects 45 46| name | example | 47| ----- | --------------------------------------------------------------------------------------- | 48| lpf | <MiniRepl client:visible tune={`note("c2 c3 c2 c3").s("sawtooth").lpf("400 2000")`} /> | 49| vowel | <MiniRepl client:visible tune={`note("c3 eb3 g3").s("sawtooth").vowel("<a e i o>")`} /> | 50| gain | <MiniRepl client:visible tune={`s("hh*16").gain("[.25 1]*4")`} /> | 51| delay | <MiniRepl client:visible tune={`s("bd rim bd cp").delay(.5)`} /> | 52| room | <MiniRepl client:visible tune={`s("bd rim bd cp").room(.5)`} /> | 53| pan | <MiniRepl client:visible tune={`s("bd rim bd cp").pan("0 1")`} /> | 54| speed | <MiniRepl client:visible tune={`s("bd rim bd cp").speed("<1 2 -1 -2>")`} /> | 55| range | <MiniRepl client:visible tune={`s("hh*32").lpf(saw.range(200,4000))`} /> | 56 57## Pattern Effects 58 59| name | description | example | 60| ------ | ----------------------------------- | ----------------------------------------------------------------------------------- | 61| setcpm | sets the tempo in cycles per minute | <MiniRepl client:visible tune={`setcpm(45); sound("bd sd [~ bd] sd")`} /> | 62| fast | speed up | <MiniRepl client:visible tune={`sound("bd sd [~ bd] sd").fast(2)`} /> | 63| slow | slow down | <MiniRepl client:visible tune={`sound("bd sd [~ bd] sd").slow(2)`} /> | 64| rev | reverse | <MiniRepl client:visible tune={`n("0 2 4 6").scale("C:minor").rev()`} /> | 65| jux | split left/right, modify right | <MiniRepl client:visible tune={`n("0 2 4 6").scale("C:minor").jux(rev)`} /> | 66| add | add numbers / notes | <MiniRepl client:visible tune={`n("0 2 4 6".add("<0 1 2 1>")).scale("C:minor")`} /> | 67| ply | speed up each event n times | <MiniRepl client:visible tune={`s("bd sd").ply("<1 2 3>")`} /> | 68| off | copy, shift time & modify | <MiniRepl client:visible tune={`s("bd sd, hh*4").off(1/8, x=>x.speed(2))`} /> |