Le synthé :sound_in
, comme décrit dans la section précédente, fournit une méthode très flexible et familière pour travailler avec les entrées audio. Toutefois, comme nous en avons discuté, elle a quelques problématiques lorsque nous travaillons avec une seule entrée audio comme un seul instrument (comme la voix ou une guitare). La meilleure approche pour travailler avec un seul flux d’audio en continu, et de loin, est d’utiliser live_audio
.
live_audio
partage quelques contraintes de design interne avec live_loop
(d’où le nom similaire). Premièrement, il doit avoir un nom unique et deuxièmement, un seul flux live_audio
avec ce nom peut exister à tout moment. Jetons un coup d’œil :
live_audio :foo
Ce code va réagir d’une façon similaire à synth :sound_in
avec quelques différences clés : il tourne pour toujours (jusqu’à ce que vous le stoppiez explicitement) et vous pouvez le bouger vers de nouveaux contextes FX dynamiquement.
A son déclenchement initial, live_audio
fonctionne exactement de la façon que vous pensez qu’il fonctionne avec FX. Par exemple, pour démarrer un flux audio en direct avec des réverbérations ajoutées, utiliser simplement un bloc FX :reverb
:
with_fx :reverb do
live_audio :foo
end
Toutefois, considérant que ce live_audio
tourne pour toujours (au moins jusqu’à ce que vous l’arrêtiez), ce serait assez contraignant si, comme les synthés typiques, l’audio en direct était lié à l’intérieur du FX :reverb
pour son existence entière. Heureusement, ce n’est pas le cas et cela a été conçu pour être facile à déplacer entre des FX différents. Essayons-le. Exécutez le code ci-dessus pour entendre l’audio en direct venir directement de la première entrée de votre carte de son. À noter, si vous utilisez un portable, cela correspondra habituellement à votre microphone intégré, alors il est recommandé d’utiliser des écouteurs pour arrêter le retour d’informations.
Maintenant, pendant que vous entendez l’audio live depuis votre carte son avec de la réverbération, modifiez le code ainsi :
with_fx :echo do
live_audio :foo
end
Maintenant, pressez Exécuter, et vous entendrez immédiatement l’audio joué au travers de l’écho FX et plus via la réverbération. Si vous voulez les deux, modifiez le code à nouveau et pressez Exécuter :
with_fx :reverb do
with_fx :echo do
live_audio :foo
end
end
Il est important de préciser que vous pouvez appeler live_audio :foo
depuis tout thread ou tout boucle live, et il déplacera le synthé audio live de ce contexte actuel de thread. Vous pouvez donc facilement avoir plusieurs boucles live qui appellent live_audio :foo
à différent moments faisant en sorte que le contexte d’effet soit automatiquement changé, ceci donnant des résultats intéressants.
Contrairement aux synthés standards, étant donné que live_audio
n’a pas d’enveloppe, il va continuer de s’exécuter pour toujours (même si vous supprimez le code, une fonction demeure définie en mémoire même si vous supprimez le code dans l’éditeur). Pour l’arrêter, vous devez utiliser l’argument :stop
:
live_audio :foo, :stop
Cela peut être facilement redémarré en l’appelant sans l’argument :stop
de nouveau :
live_audio :foo
De plus, tous les synthés d’audio en direct qui s’exécutent sont arrêtés quand vous pressez sur le bouton Stop global (de même que pour tous les autres synthés et FX qui s’exécutent).
Pour ce qui est des canaux audio, par défaut live_audio
agit similairement au synthé :sound_in
dans le fait qu’il prend un simple flux d’entrée mono d’audio et le convertit en flux stéréo en utilisant le panoramique spécifié. Cependant, tout comme :sound_in_stereo
, il est également possible de dire à live_audio
de lire deux entrées audio consécutivement et de les traiter en tant que canaux de droite et de gauche directement. Cela est possible via l’option :stereo
. Par exemple, pour traiter l’entrée 2 en tant que signal de gauche et l’entrée 3 en tant que signal de droite, vous avez besoin de configurer l’option input:
à 2 et d’activer le mode stéréo comme suit :
live_audio :foo, stereo: true, input: 2
Notez qu’une fois que vous avez démarré un flux d’audio en direct en mode stéréo, vous ne pouvez pas le changer en mono sans l’arrêter et le démarrer. Similairement, si vous le démarrez dans le mode mono par défaut, vous ne pouvez pas changer en stéréo sans arrêter et démarrer le flux.