Esantioane partiale

Aceasta sectiune va incheia explorarea player-ului de esantioane din Sonic Pi. Sa facem o scurta recapitulare. Pana acum am vazut cum putem porni esantioanele:

sample :loop_amen

Apoi am vazut cum putem schimba viteza de redare a esantioanelor, cum ar fi ascultandu-le la jumatate din viteza initiala:

sample :loop_amen, rate: 0.5

Apoi, am vazut cum putem introduce progresiv un esantion (sa facem asta la jumatate din viteza):

sample :loop_amen, rate: 0.5, attack: 1

Am vazut de asemenea cum putem sa folosim un start mai percutant al esantionului, dand o valoare explicita pentru ‘sustain:’ si atribuind valori mici pentru fazele de attack si release:

sample :loop_amen, rate: 2, attack: 0.01, sustain: 0, release: 0.35

Totusi, nu ar fi frumos daca nu ar trebui sa pornim mereu de la inceputul esantionului? Nu ar fi frumos daca nu ar trebui sa mergem mereu pana la sfarsitul esantionului?

Alegerea punctului de pornire

Putem alege un punct de pornire arbitrar in esantion specificand un numar intre 0 si 1, unde 0 este inceputul acestuia, 1 sfarsitul, iar 0.5 este la jumatatea esantionului. Sa incercam sa redam doar a doua jumatate din amen break:

sample :loop_amen, start: 0.5

Ce-ar fi sa incercam ultimul sfert din esantion:

sample :loop_amen, start: 0.75

Alegerea punctului de oprire

Asemanator, este posibil sa alegem un punct de oprire arbitrar in cadrul esantionului , ca o valoare intre 0 si 1. Sa oprim amen break la jumatate:

sample :loop_amen, finish: 0.5

Precizarea inceputului si sfarsitului

Desigur, putem combina aceste 2 valori pentru a reda segmente arbitrare din fisierul audio. Cum ar fi doar o mica bucata de la mijloc:

sample :loop_amen, start: 0.4, finish: 0.6

Ce se intampla daca alegem o pozitie de inceput dupa pozitia de sfarsit?

sample :loop_amen, start: 0.6, finish: 0.4

Super! Este redat de la coada la cap!

In combinatie cu viteza

Putem combina aceasta posibilitate de a reda segmente audio arbitrare cu parametrul deja cunoscut ‘rate:’ (viteza de redare). De exemplu, putem reda o bucata foarte mica de la mijlocul esantionului amen break foarte lent:

sample :loop_amen, start: 0.5, finish: 0.7, rate: 0.2

In combinatie cu anvelopele

In fine, putem combina toate acestea cu anvelopele ADSR pentru a produce rezultate interesante:

sample :loop_amen, start: 0.5, finish: 0.8, rate: -0.2, attack: 0.3, release: 1

Acum poti sa te joci modeland esantioanele cu ajutorul acestor chestii distractive…