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

## outkpc

outkpc — Envoie des messages MIDI de changement de programme au taux-k.

## Description

Envoie des messages MIDI de changement de programme au taux-k.

## Syntaxe

    outkpc kchn, kprog, kmin, kmax

## Exécution

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

kprog -- numéro de changement de programme en virgule flottante

kmin -- valeur minimale en virgule flottante (convertie en valeur entière MIDI 0)

kmax -- valeur maximale en virgule flottante (convertie en valeur entière MIDI 127 (7 bit))

outkpc envoie des messages MIDI de changement de programme au taux-k. Il ne fonctionne qu'avec les instruments MIDI qui les reconnaissent. Il peut piloter une valeur différente de paramètre pour chaque note active.

Il peut échelonner un argument de taux-k en virgule flottante selon les valeurs kmin et kmax. Par exemple avec kmin = 1.0 et kmax = 2.0, lorque l'argument kvalue reçoit la valeur 2.0, l'opcode envoie la valeur 127 sur le périphérique MIDI OUT. Lorsque l'argument kvalue reçoit la valeur 1.0, il envoie la valeur 0. Les opcodes de taux-k envoient un message chaque fois que la valeur MIDI traduite de l'argument kvalue change.

## Exemples

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

Exemple 611. Exemple de l'opcode outkpc.

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.

Cet exemple génère un changement de programme et une note sur le port de sortie MIDI de Csound chaque fois qu'une note est reçu sur le canal 1. Il faut que quelque chose soit connecté sur le port MIDI de sortie de Csound pour entendre le résultat.

    <CsoundSynthesizer>
    <CsOptions>
    ; Select audio/midi flags here according to platform
    ; Audio out   Audio in    No messages
    -odac           -iadc     -d         -M0  -Q1 ;;;RT audio I/O with MIDI in
    </CsOptions>
    <CsInstruments>

    sr = 44100
    kr = 4410
    ksmps = 10
    nchnls = 2

    ; Example by Giorgio Zucco 2007

    kprogram init 0

    instr 1 ;Triggered by MIDI notes on channel 1

      ifund   notnum
      ivel 	veloc
      idur = 1

    ; Sends a MIDI program change message according to
    ; the triggering note's velocity
    outkpc     1 ,ivel ,0 ,127

    noteondur  1 ,ifund ,ivel ,idur

    endin

    </CsInstruments>
    <CsScore>
    ; Dummy ftable
    f 0 60
    </CsScore>
    </CsoundSynthesizer>

Voici un autre exemple de l'opcode outkpc. Il utilise le fichier outkpc_flkt.csd.

Exemple 612. Exemple de l'opcode outkpc utilisant FLTK.

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
    ; Audio out   Audio in    No messages
    -odac           -iadc     -d         -M0  -Q1;;;RT audio I/O with MIDI in
    </CsOptions>
    <CsInstruments>

    sr = 44100
    kr = 4410
    ksmps = 10
    nchnls = 2

    ; Example by Giorgio Zucco 2007

    FLpanel "outkpc",200,100,90,90;start of container
    gkpg, gihandle FLcount "Midi-Program change",0,127,1,5,1,152,40,16,23,-1
    FLpanelEnd

    FLrun

    instr 1

    ktrig changed gkpg
    outkpc     ktrig,gkpg,0,127

    endin

    </CsInstruments>
    <CsScore>
    ; Run instrument 1 for 60 seconds
    i 1 0  60
    </CsScore>
    </CsoundSynthesizer>

## Voir aussi

outiat, outic14, outic, outipat, outipb, outipc, outkat, outkc14, outkc, outkpat, outkpb

## Crédits

Auteur : Gabriel Maldonado
Italie

Nouveau dans la version 3.47 de Csound.

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

Précédent | Niveau supérieur | Suivant
outkpb | Sommaire | outleta