5 Algorithmic Beat Slicer


Bij deze opdracht ga je een algoritmische beat slicer bouwen in Max. Je gebruikt een drumloop die standaard in Max zit. Deze ga je vervolgens "slicen" door er stukjes uit af te spelen in random volgorde, van random lengtes en in random ritmes.

Deadline: 18 maart

Belangrijke objecten in deze opdracht:



Lees altijd even de Uitdaging nadat je klaar bent. Mogelijk zit er iets interessants tussen dat je kunt gebruiken voor je eindopdracht!

Zorg ervoor dat je je patch goed kunt presenteren bij het aftekenen!

Dat betekent :



a. Slice a Sample

Maak de objecten [buffer~] en [play~]. Lees van allebei de objecten de helpfiles!

Geef de [buffer~] een naam en laad hierin de sample jongly.aif. Sluit [play~] aan op een [gain~] en [ezdac~]. Combineer vervolgens een [button], [random], en de (start $1 $2 $3) message om bij elke klik op de button een stukje af te spelen van 100 milliseconde, start op een willekeurige positie tussen 0 en 4000 milliseconden.

Zorg dat als het stukje klaar is er gelijk weer een nieuwe waarde wordt gegenereerd en afgespeeld. Gebruik de 2de outlet van play~, hierdoor ontstaat er dus een loop.

Tip: [play~], [buffer~], [random], [+ 0.], [pack], [message]


b. Rhythmic Slicing

Gebruik het [info~] object om de lengte van de drumloop te achterhalen. Gebruik deze waarde om de lengte van 1 8ste deel van de loop te bepalen. Zorg er nu voor dat elke herhaling de start positie een willekeurige veelvoud is van deze 8ste lengte.

Let op dat de afspeelsnelheid ook ingevuld moet worden als het verschil tussen de start en stoptijd, anders hoor je je sample op een andere pitch!

Tip: [info~], [/], [random], [*], [+]

(cijfer: 6)


c. Playback Speed

Maak een toevoeging aan je patch die ervoor zorgt dat bij elke herhaling de sample willekeurig 2x zo langzaam of 2x zo snel wordt afgespeeld.

Tip: [pack], [*], [random], [zl.lookup], [zl.mth], [pow], [-], [t 2 f]

(cijfer: 7)


d. Probability with Reverse and Double-Time

Maak de volgende toevoegingen aan je patch:

(cijfer: 8)


UITDAGING (cijfer: 9, 10, 10+ met eeuwige waardering!)

  1. Get off the grid! Voeg meer randomness toe aan de start/eindposities en de afspeellengte zodat het ritme minder duidelijk naar voren gaat komen.

  2. Gebruik het [waveform~] object om de audio weer te geven en de stukjes daarin ook weer te geven als selectie tijdens het afspelen.

  3. Kijk eens naar het [record~] object en [ezadc~] om zelf live input op te nemen dat je vervolgens kan slicen.

  4. Gebruik de principes van de beatslicer om een meer granulaire synth te maken. De grains worden korter, spelen sneller achter elkaar, en de random positie voor de volgende grain ligt op een willekeurige afstand van de vorige. Tip: drunk, scale, slider.