STKShakers

STKShakers — STKShakers simule des sons environnementaux de collisions entre de multiples objets indépendants produisant des sons.

Description

STKShakers constitue un ensemble d'instruments PhISEM et PhOLIES : PhISEM (Physically Inspired Stochastic Event Modeling = modélisation physique inspirée d'évènements aléatoires) est une approche algorithmique de simulation de collisions entre de multiples objets indépendants produisant des sons. On peut simuler des maracas, un chekeré, une cabasa, un carillon en bambou, des gouttes d'eau, un tambourin, des grelots et un güiro. Voir Shaker Controllers to control PhISEM. PhOLIES (Physically-Oriented Library of Imitated Environmental Sounds = bibliothèque physiquement orientée d'imitation de sons environnementaux) est une approche similaire pour la synthèse de sons environnementaux. Elle simule des petites branches qui se brisent, de la neige qui crisse (ou pas), une déchirure, du papier de verre, etc...

Syntaxe

asignal STKShakers ifrequency, iamplitude, [kenerg, kv1[, kdecay, kv2[, kshake, kv3[, knum, kv4[, kres, kv5[, kinstr, kv6]]]]]]

Initialisation

ifrequency -- Fréquence de la note jouée, en Hz.

iamplitude -- Amplitude de la note jouée (entre 0 et 1).

Exécution

kenerg -- contrôleur 2, énergie des secousses. kv1 compris entre 0 et 127.

kdecay -- contrôleur 4, décroissance du système. kv2 compris entre 0 et 127.

kshake -- contrôleur 128, énergie des secousses. kv3 compris entre 0 et 127.

knum -- contrôleur 11, nombre d'objets. kv4 compris entre 0 et 127.

kres -- contrôleur 1, fréquence de résonance. kv5 compris entre 0 et 127.

kinstr -- contrôleur 1071, sélection de l'instrument (Maracas = 0, Cabasa = 1, Chekeré = 2, Güiro = 3, Gouttes d'eau = 4, Carillon de bambou= 5, Tambourin = 6, Grelots = 7, Branches = 8, Crissement = 9, Déchirure = 10, Papier de verre = 11, Canette de Coca = 12, Mug = 13, Penny + Mug = 14, Pièce de cinq cents + Mug = 15, Pièce de dix cents + Mug = 16, Pièce de vingt-cinq cents + Mug = 17, Franc + Mug = 18, Peso + Mug = 19, Gros galets = 20, Petits galets = 21, Carillon de bambou accordé = 22). kv6 compris entre 0 et 22.

[Note] Notes

Le code pour cet opcode vient directement de la classe Shakers du Synthesis Toolkit en C++ par Perry R. Cook et Gary P. Scavone. On peut en savoir plus sur les classes STK ici : https://ccrma.stanford.edu/software/stk/classes.html

kc1, kv1, kc2, kv2, kc3, kv3, kc4, kv4, kc5, kv5, kc6, kv6, kc7, kv7, kc8, kv8 -- Jusqu'à 8 paires de contrôle facultatives au taux-k pour les opcodes STK. Chaque paire de contrôle est constituée d'un numéro de contrôleur (kc) suivi d'une valeur de contrôleur (kv). Le numéro de contrôleur ainsi que la valeur associée sont des variables de taux-k. Cependant, durant l'exécution, les numéros de contrôleur sont habituellement constants tandis que les valeurs correspondantes peuvent changer à tout moment. L'ordre des paires de contrôle est arbitraire mais elles doivent apparaître après iamplitude. Il n'est pas non plus nécessaire d'utiliser toutes les paires.

Exemples

Voici un exemple de l'opcode STKShakers. Il utilise le fichier STKShakerscsd.

Exemple 938. Exemple de l'opcode STKShakers.

<CsoundSynthesizer>
<CsOptions>
; Select audio/midi flags here according to platform
-odac     ;;;realtime audio out
;-iadc    ;;;uncomment -iadc if RT audio input is needed too
; For Non-realtime ouput leave only the line below:
; -o STKShakers.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

sr = 44100
ksmps = 32
nchnls = 2
0dbfs  = 1

instr 1

ifrq	=	p4

asig	STKShakers cpspch(p4), 1, 2, 10, 4, 10, 11, 10, 1, 112, 128, 80, 1071, 5
asig	=	asig *2				;amplify
	outs asig, asig
endin

</CsInstruments>
<CsScore>

i 1 0.2 .5 7.00 75  0  20

e
</CsScore>
</CsoundSynthesizer>


Crédits

Auteur : Michael Gogins (d'après Georg Essl)
Irreducible Productions
New York, NY

Nouveau dans la version 5.11 de Csound.