Ajout d’effets (FX)

Dans cette section, nous allons regarder un couple d’effets : réverbération et écho. Nous allons voir comment les utiliser, comment contrôler leurs options et comment les chaîner.

Le système d’effets de Sonic Pi utilise les blocs. Donc, si vous n’avez pas lu la section 5.1, vous pourriez lui jeter un œil rapidement et puis revenir ici.

Réverbération

Si nous voulons utiliser la réverbération, nous écrivons with_fx :reverb en tant qu’entête particulière de notre bloc, comme ceci :

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

Maintenant exécutez ce code et vous l’entendrez joué avec réverbération. Ça sonne bien, n’est-ce pas ! Tout sonne plutôt agréablement avec de la réverbération.

Maintenant, voyons ce qui se passe si nous avons du code en dehors du bloc do/end :

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

Remarquez que le dernier play 55 n’est pas joué avec de la réverbération. C’est parce qu’il est en dehors du bloc do/end, ainsi l’effet de réverbération n’agit pas sur lui.

De même, si vous placez des sons avant le bloc do/end, ils ne seront pas non plus affectés :

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

Écho

Il y a beaucoup de choix d’effets. Et si on essayait un peu d’écho ?

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

Un des puissants aspects des blocs d’effets de Sonic Pi est qu’on peut leur passer des options de manière similaire aux options que nous avons déjà vues avec play et sample. Par exemple, un paramètre sympa d’écho avec lequel jouer est phase:. Il représente la durée d’un écho en temps musicaux. Rendons l’écho plus lent :

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

Rendons aussi l’écho plus rapide :

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

Faisons décroître l’écho plus longuement en spécifiant la durée de decay: à 8 temps :

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

Imbrication des effets

Un des aspects les plus puissants des blocs d’effets est que vous pouvez les imbriquer. Ceci vous permet de chaîner facilement les effets entre eux. Par exemple, que faire si vous vouliez jouer du code avec de l’écho et ensuite de la réverbération ? Facile, mettez simplement l’un à l’intérieur de l’autre :

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

Pensez à du son provenant de l’intérieur et se propageant vers l’extérieur. Le son de tout le code situé dans le bloc intérieur dont play 50 est d’abord envoyé vers l’effet d’écho et le son produit par l’effet d’écho est à son tour envoyé vers l’effet de réverbération.

Nous pouvons utiliser des imbrications très profondes pour des résultats délirants. Toutefois, soyez averti, les effets peuvent utiliser beaucoup de ressources et quand vous les imbriquez, vous allez effectivement faire agir de multiples effets simultanément. Donc soyez économe avec l’utilisation des FX, en particulier sur des plateformes peu puissantes telles que le Raspberry Pi.

À la découverte des effets

Sonic Pi est livré avec un grand nombre d’effets avec lesquels vous pouvez jouer. Pour trouver ceux qui sont disponibles, cliquez sur “FX” dans le menu horizontal du système d’aide et vous verrez une liste des options disponibles. Voici une liste de mes préférés :

Maintenant, défoulez-vous et ajoutez des effets partout pour obtenir d’étonnants sons nouveaux !