Varighet med omslag

I et tidligere avsnitt så vi hvordan vi bruker kommandoen ‘sleep’ for å utløse lydene våre. Men har vi ennå ikke klart å styre varigheten av lydene våre.

For å gi oss et enkelt, men kraftig grep til å ‘kontrollere varigheten’ til lydene våre, har Sonic Pi innebygd ADSR amplitude omslag (vil dekker hva ADSR betyr senere i denne delen). En amplitude-omslag tilbyr to nyttige kontrollmuligheter:

Varighet

Varigheten er hvor lenge lyden varer. En lengre varighet betyr at du hører lyden lenger. Sonic Pis lyder har alle en kontrollerbar amplitude-omslag, og den totale varigheten av dette omslaget er varigheten av lyden. Derfor, ved å kontrollere omslaget styrer du varigheten.

Utslag

ADSR-omslaget kontrollerer ikke bare varighet, det gir deg også god kontroll over lydens amplitude. Alle hørbare lyder starter og avslutter stille og inneholder noen ikke-stille deler i mellom. Med omslag kan du skyve og holde amplituden til lydens ikke-stille deler imellom. Det er som å gi noen instruksjoner om hvordan å skru opp og ned volumet på en gitarforsterker. For eksempel kan du be noen “å starte i stillhet, sakte flytte opp til full volum, holder den litt, så raskt gå tilbake til stillhet.” Med Sonic Pi kan du programmere akkurat dette med omslag.

Bare for å oppsummere, som vi har sett før, amplituden 0 er stillhet og amplituden 1 er normal lydstyrke.

Nå, la oss se på hver av delene av omslagene igjen.

Release Phase

Den eneste delen av envelope som brukes som standard, er utfasingstidspunktet. Det er tiden det tar for syntens lyd til å dø ut. Alle synter som har utfasingstid 1 som betyr at de har en standard varighet på 1 slag (som standard er en BPM på 60 1 sekund):

play 70

Noten vil være hørbar i 1 sekund. Gå i gang med å sette tiden :-) Dette er kortversjonen av en lengre og mer eksplisitt versjon:

play 70, release: 1

Legg merke til hvordan dette høres akkurat som det samme (lyden varer ett sekund). Men det er nå svært enkelt å endre varigheten ved å endre verdien av ‘release:’ opt:

play 60, release: 2

Vi kan lage en svært kort syntlyd ved hjelp av en liten løslate tid:

play 60, release: 0.2

Varigheten av tiden lyden sendes kalles release phase-en og som standard er den lineær dvs. en rett linje. Diagrammet nedenfor illustrerer denne overgangen:

release envelope

Den vertikale linjen helt til venstre i diagrammet viser at lyden starter på amplitude 0, men går til full amplitude umiddelbart (dette er angrepsfasen som beskrives straks). På full amplitude beveger den seg i en rett linje ned til null, og bruker den tiden som er angitt i release:. Lengre innkoblingstid lager lengre utfasing av synten.

Du kan derfor endre varigheten til lyden ved å endre innkoblingstiden. Ha en tillagt spillevarighet til din musikk.

Angrepsfasen

Forvalg for er attack phase er 0 for alle synter som betyr de flytter fra amplitude 0 til 1 umiddelbart. Dette gir synt en første perkusjonslyd. Men kanskje du ønsker å fade ut lyden. Dette kan oppnås med ‘attack:’ opt-et. Prøv uttoning med noen lyder:

play 60, attack: 2
sleep 3
play 65, attack: 0.5

Du kan bruke flere opt-er samtidig. For eksempel i et kort angrep og med lang versjon:

play 60, attack: 0.7, release: 4

Dette korte angrep og lange versjonsomslaget er illustrert i følgende diagram:

attack release envelope

Selvfølgelig kan du flytte ting rundt. Prøv et lengre angrep og en kort versjon:

play 60, attack: 4, release: 0.7

long attack short release envelope

Til slutt, du kan også ha både korte angrep og versjontider for kortere lyder.

play 60, attack: 0.5, release: 0.5

short attack short release envelope

Sustain Phase

I tillegg til å angi angrep og versjonstid, kan du også angi en beholdefase for kontroll av sustain phase-en. Dette er tiden når lyden opprettholdes med full amplitude mellom angrep og versjonsfasene.

play 60, attack: 0.3, sustain: 1, release: 1

ASR envelope

“Sustain time” er nyttig for viktige lyder du ønsker å gi fullt nærvær i miksen før du skriver inn en valgfri versjon av fasen. Selvfølgelig, det er helt lovlig å angi både ‘attack:’ og ‘release:’ opts til 0 og bare bruke sustain for å ha absolutt ingen inn- eller utfasing for lyden. Men vær advart, en release på 0 kan produsere klikk i lyden og det er ofte bedre å bruke en veldig liten verdi som 0,2.

Decay Phase

For et ekstra kontrollnivå, kan du også angi sluttid (decay). Dette er en fase i omslaget som passer mellom angrepet og opprettholdesesfasen og angir et tidspunkt der amplituden vil synke fra ‘attack_level:’ til ‘decay_level:’ (som, med mindre du eksplisitt har satt den, blir satt til ‘sustain_level:’). Som standard ‘decay:’ opt er 0 og både angrepet og sluttiden er 1 så de må spesifiseres for at sluttiden skal ha noen effekt:

play 60, attack: 0.1, attack_level: 1, decay: 0.2, sustain_level: 0.4, sustain: 1, release: 0.5

ADSR envelope

Decay nivå

Ett siste triks er at selv om opsjonen ‘decay_level:’ i utgangspunktet har den samme verdien som ‘sustain_level:’ kan du angi dem med ulike verdier for å ha full kontroll over omslaget. Dette lar deg lage omslag slik som dette:

play 60, attack: 0.1, attack_level: 1, decay: 0.2, decay_level: 0.3, sustain: 1, sustain_level: 0.4, release: 0.5

ASR envelope

Det er også mulig å sette ‘decay_level:’ høyere enn ‘sustain_level:’:

play 60, attack: 0.1, attack_level: 0.1, decay: 0.2, decay_level: 1, sustain: 0.5, sustain_level: 0.8, release: 1.5

ASR envelope

ADSR omslag

For å oppsummere, har Sonic Pi ADSR-omslagene følgende følgende faser:

  1. attack-tid fra 0-amplitude til attack_level,
  2. decay-tid for å flytte amplituden fra attack_level til decay_level,
  3. sustain-tid for å flytte amplitude-nivået fra ‘decay_level’ til ‘sustain_level’,
  4. Release-tid for å flytte amplituden fra sustain_level til 0

-Det er viktig å merke seg at varigheten av en lyd er summen for hver av disse fasene. Derfor har følgende lyd har en varighet på 0,5 + 1 + 2 + 0,5 = 4 rytmer:

play 60, attack: 0.5, attack_level: 1, decay: 1, sustain_level: 0.4, sustain: 2, release: 0.5

Nå sett i gang å leke med å legge omslag på dine lyder…