STKWhistle
Précédent | Opcodes et opérateurs de l'orchestre | Suivant

## STKWhistle

STKWhistle — STKWhistle produit des sons de sifflet.

## Description

Opcode du greffon stkopd.

STKWhistle produit des sons de sifflet (de police). Il utilise un modèle hybride physique/spectral d'un sifflet de police (à la Cook).

## Syntaxe

    asignal STKWhistle ifrequency, iamplitude, [kmod, kv1[, knoise, kv2[, kfipfreq, kv3[, kfipgain, kv4[, kvol, kv5]]]]]

## Initialisation

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

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

## Exécution

kmod -- contrôleur 2, modulation de la fréquence du souffle. kv1 compris entre 0 et 127.

knoise -- contrôleur 4, gain du bruit. kv2 compris entre 0 et 127.

kfipfreq -- contrôleur 11, modulation de fréquence du biseau. kv3 compris entre 0 et 127.

kfipgain -- contrôleur 1, gain de la modulation du biseau. kv4 compris entre 0 et 127.

kvol -- contrôleur 128, volume. kv5 compris entre 0 et 127.

| Notes
Le code pour cet opcode vient directement de la classe Whistle 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 STKWhistle. Il utilise le fichier STKWhistle.csd.

Exemple 1023. Exemple de l'opcode STKWhistle.

    <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 STKWhistle.wav -W ;;; for file output any platform
    </CsOptions>
    <CsInstruments>

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

    instr 1

    ifrq	=	p4
    kv1	line	p5, p3, p6				;Blowing Frequency Modulation
    kv3	=	p7					;Fipple Modulation Frequency

    asig	STKWhistle cpspch(p4), 1, 4, 20, 11, kv3, 1, 100, 2, kv1, 128, 127
    asig	=	asig*.7				;too loud
    	outs asig, asig
    endin

    </CsInstruments>
    <CsScore>

    i 1 0 .5 9.00 100 30 30
    i 1 1 3  9.00 100  0 20
    i 1 4.5 . 9.00 1  0 100
    e
    </CsScore>
    </CsoundSynthesizer>

## Crédits

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

Nouveau dans la version 5.11 de Csound.

Précédent | Niveau supérieur | Suivant
STKVoicForm | Sommaire | STKWurley