# FX Toevoegen

In deze sectie zullen we naar een paar Effecten kijken : reverb en echo. We zullen zien hoe ze te gebruiken, hoe hun opts te besturen en hoe ze te chainen.

Sonic Pi’s FX systeem maakt gebruik van blokken. Dus als je die niet hebt gelezen in sectie 5.1 Kan je hier snel naar kijken en kom dan naar hier terug.

## Reverb

Als we reverb willen gebruiken schrijven we `with_fx :reverb` als speciale code naar ons blok als volgt:

    with_fx :reverb do
      play 50
      sleep 0.5
      sample :elec_plip
      sleep 0.5
      play 62
    end

Speel deze code nu en hoor dat deze met reverb wordt gespeeld. Dat klinkt goed, niet?Alles klinkt vrij aardig met een reverb.

Laten we nu kijken wat er gebeurt als we buiten het do/end blok code hebben:

    with_fx :reverb do
      play 50
      sleep 0.5
      sample :elec_plip
      sleep 0.5
      play 62
    end
    sleep 1
    play 55

Merk op hoe de laatste `play 55` niet met reverb gespeeld wordt. Dit is omdat het buiten het do/end blok staat, en dus niet door de reverb FX gecapteerd kan worden.

Op dezelfde manier zullen klanken vòòr het do/end blok ook niet gecapteerd worden:

    play 55
    sleep 1
    with_fx :reverb do
      play 50
      sleep 0.5
      sample :elec_plip
      sleep 0.5
      play 62
    end
    sleep 1
    play 55

## Echo

Er zijn veel effecten te kiezen. Wat dacht je van wat echo?

    with_fx :echo do
      play 50
      sleep 0.5
      sample :elec_plip
      sleep 0.5
      play 62
    end

Één van de sterke punten van Sonic Pi’s FX blokken is dat je er opties aan kunt meegeven, vergelijkbaar met de opts die we al met `play` en `sample` hebben gezien. Een plezante echo opt om mee te spelen is `phase:` die de duurtijd van een echo in tellen (Beats) weergeeft. Laat ons even de echo vertragen:

    with_fx :echo, phase: 0.5 do
      play 50
      sleep 0.5
      sample :elec_plip
      sleep 0.5
      play 62
    end

Laten we de echo sneller maken:

    with_fx :echo, phase: 0.125 do
      play 50
      sleep 0.5
      sample :elec_plip
      sleep 0.5
      play 62
    end

Laat ons de echo over een langere tijd uitfaden door de `decay:` tijd in te stellen naar 8 beats:

    with_fx :echo, phase: 0.5, decay: 8 do
      play 50
      sleep 0.5
      sample :elec_plip
      sleep 0.5
      play 62
    end

## Effecten nesten

Een van de krachtigste aspecten van de FX-blokken is dat u hen kunt nesten. Hierdoor kan je heel gemakkelijk een FX keten samenstellen. Bijvoorbeeld, wat als je wat code met echo wilde spelen en vervolgens met een reverb? Gemakkelijk, zet de één gewoon in de andere:

    with_fx :reverb do
      with_fx :echo, phase: 0.5, decay: 8 do
        play 50
        sleep 0.5
        sample :elec_blup
        sleep 0.5
        play 62
      end
    end

Denk aan de audio als zou deze van binnenuit stromen. Het geluid van alle code binnen het binnenste do/end blok zoals ‘play 50’ wordt eerst verzonden naar de echo FX en het geluid van de echo FX wordt op zijn beurt verstuurd naar de reverb FX.

We kunnen heel diep nesten en deze gebruiken voor maffe resultaten. Maar wees hierbij gewaarschuwd, want de FX kunnen veel cpu gebruiken wanneer u effectief meerdere effecten nest die gelijktijdig worden uitgevoerd. Wees dus spaarzaam op uw gebruik van effecten zeker op laag aangedreven platforms zoals Raspberry Pi.

## Effecten ontdekken

Sonic Pi wordt met een groot aantal effecten geleverd om mee te spelen. Als j wil weten welke er beschikbaar zijn, klik op FX in het linkeruiteinde van het help-systeem en je zal een lijst van beschikbare opties zien. Hier is een lijst van enkele van mijn favorieten:

- wobble,
- reverb,
- echo,
- distortion,
- slicer

Doe nu maar eens goed gek en zet overal effecten op voor wat verbazingwekkende nieuwe geluiden!