# 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:

- kontrollere varigheten av en lyd
- kontroll over en lyds amplitude

## 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:

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:

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

    play 60, attack: 4, release: 0.7

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

    play 60, attack: 0.5, release: 0.5

## 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

“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

## 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

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

## 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…