ctrl21

ctrl21 — Permet un signal MIDI sur 21 bit en nombres décimaux selon une échelle entre des limites minimale et maximale.

Description

Permet un signal MIDI sur 21 bit en nombres décimaux selon une échelle entre des limites minimale et maximale.

Syntaxe

idest ctrl21 ichan, ictlno1, ictlno2, ictlno3, imin, imax [, ifn]
kdest ctrl21 ichan, ictlno1, ictlno2, ictlno3, kmin, kmax [, ifn]

Initialisation

idest -- signal de sortie

ichan -- numéro de canal MIDI (1-16)

ictlno1 -- numéro de contrôleur pour l'octet de poids fort (0-127)

ictlno2 -- numéro de contrôleur pour l'octet de poids moyen (0-127)

ictlno3 -- numéro de contrôleur pour l'octet de poids faible (0-127)

imin -- la valeur décimale minimale de sortie définie par l'utilisateur

imax -- la valeur décimale maximale de sortie définie par l'utilisateur

ifn (facultatif) -- la table à lire lorsque l'indexation est requise. La table doit être normalisée. La sortie est mise à l'échelle entre les valeurs imax et imin.

Exécution

kdest -- signal de sortie

kmin -- la valeur décimale minimale de sortie définie par l'utilisateur

kmax -- la valeur décimale maximale de sortie définie par l'utilisateur

ctrl21 (contrôle MIDI sur 21 bit au taux-i et au taux-k) permet un signal MIDI sur 21 bit en nombres décimaux mis à l'échelle entre des limites minimale et maximale. Les valeurs minimale et maximale peuvent être variées au taux-k. Il peut utiliser une indexation de table facultative. Il nécessite trois contrôleurs MIDI en entrée.

ctrl21 est différent de midic21 parce qu'il peut être inclu dans des instruments prévus pour une partition sans que Csound ne plante. Il a besoin du paramètre additionnel ichan contenant le canal MIDI du contrôleur. Le canal MIDI est le même pour tous les contrôleurs utilisés dans un opcode ctrl21.

Exemples

Voici un exemple de l'opcode ctrl21. Il utilise le fichier ctrl21.csd.

Exemple 193. Exemple de l'opcode ctrl21.

Voir les sections Audio en temps réel et Options de la ligne de commande pour plus d'information sur l'utilisation des options de la ligne de commande.

<CsoundSynthesizer>
<CsOptions>
; Select audio/midi flags here according to platform
-odac   -M0  ;;;RT audio I/O with MIDI in
;-iadc    ;;;uncomment -iadc if RT audio input is needed too
</CsOptions>
<CsInstruments>

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

instr 1	; expects MIDI controller input on channel 1
; run and move your midi controller to see result

imax = 1
imin = 0
ichan = 1 
ictlno = 7
 
	initc21	1, ictlno, ictlno+1, ictlno+2. 1			; start at max. volume
kamp	ctrl21	ichan, ictlno, ictlno+1, ictlno+2, imin, imax	; controller 7
	printk2	kamp
asig	oscil	kamp, 220, 1
	outs	asig, asig

endin

</CsInstruments>
<CsScore>
f 1 0 4096 10 1

i1 0 20

e
</CsScore>
</CsoundSynthesizer>


Voir aussi

ctrl7, ctrl14, initc7, initc14, initc21, midic7, midic14, midic21

Crédits

Auteur : Gabriel Maldonado
Italie

Nouveau dans la version 3.47 de Csound

Merci à Rasmus Ekman pour avoir indiqué les bons intervalles pour le canal MIDI et le numéro de contrôleur.