midic14 — Permet un signal MIDI sur 14 bit en nombres décimaux selon une échelle entre des limites minimale et maximale.
Permet un signal MIDI sur 14 bit en nombres décimaux selon une échelle entre des limites minimale et maximale.
idest midic14 ictlno1, ictlno2, imin, imax [, ifn]
kdest midic14 ictlno1, ictlno2, kmin, kmax [, ifn]
idest -- signal de sortie
ictln1o -- numéro de contrôleur pour l'octet de poids fort (0-127)
ictlno2 -- numéro de contrôleur pour l'octet de poids faible (0-127)
imin -- valeur décimale minimale de sortie définie par l'utilisateur
imax -- 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.
kdest -- signal de sortie
kmin -- valeur décimale minimale de sortie définie par l'utilisateur
kmax -- valeur décimale maximale de sortie définie par l'utilisateur
midic14 (contrôle MIDI sur 14 bit au taux-i et au taux-k) permet un signal MIDI sur 14 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 en option une indexation de table interpolée. Il nécessite deux contrôleurs MIDI en entrée.
Note | |
---|---|
Veuillez noter que la famille des opcodes midic est prévue pour des évènements MIDI déclenchés, et ne nécessite pas de numéro de canal car ils vont répondre au même canal que celui qui a déclenché l'instrument (voir massign). Cependant ils vont planter s'ils sont appelés depuis un évènement de partition. |
Voici un exemple de l'opcode midic14. Il utilise le fichier midic14.csd.
Exemple 589. Exemple de l'opcode midic14.
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 --midi-key-cps=4 --midi-velocity-amp=5 ;;;realtime audio out and realtime midi in, midi key cps is routed to p4 and velocity to p5 ; For Non-realtime ouput leave only the line below: ; -o midic14.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> ; by tgrey - 2020 sr = 44100 ksmps = 32 nchnls = 2 0dbfs = 1 instr 1 ; This example expects MIDI controller input on channel 1 ; run, play a note and move your midi controllers 1 and 7 to see results ictlno1= 1 ; = cc #1 midi mod wheel (course tuning) ictlno2= 7 ; = cc #7 midi volume (fine tuning) ; max range is 3 octaves: (2^3) = 8 imax = 8 ; read both controllers, scaling them between 1 and imax kTune midic14 ictlno1, ictlno2, 1, imax printk2 kTune ; generate tones asig oscili p5, p4*kTune aref oscili p5, p4 ; combine detuned tone and reference tone ; creates a beat effect from the detune asig=(asig+aref)*.5 outs asig, asig endin </CsInstruments> <CsScore> ; run for 60 seconds f0 60 e </CsScore> </CsoundSynthesizer>