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

## slider32tablef

slider32tablef — Enregistre une banque de 32 messages de contrôle MIDI différents dans une table, filtrés avant la sortie.

## Description

Enregistre une banque de 32 messages de contrôle MIDI différents dans une table, filtrés avant la sortie.

## Syntaxe

    kflag slider32tablef ichan, ioutTable, ioffset, ictlnum1, imin1, imax1, \
          init1, ifn1, icutoff1, .... , ictlnum32, imin32, imax32, init32, ifn32, icutoff32

## Initialisation

ichan -- canal MIDI (1-16)

ioutTable -- numéro de la table qui contiendra la sortie

ioffset -- décalage dans la table de sortie. Zéro signifie que la sortie du premier contrôleur affectera le premier élément de la table. 10 signifie que la sortie du premier contrôleur affectera le onzième élément de la table.

ictlnum1 ... ictlnum32 -- numéro de contrôle MIDI (0-127)

imin1 ... imin32 -- valeurs minimales pour chaque contrôleur

imax1 ... imax32 -- valeurs maximales pour chaque contrôleur

init1 ... init32 -- valeur initiale pour chaque contrôleur

ifn1 ... ifn32 -- table de fonction de conversion pour chaque contrôleur

icutoff1 ... icutoff32 -- fréquence de coupure du filtre passe-bas pour chaque contrôleur

## Exécution

kflag -- un indicateur qui informe si un message de changement de contrôle dans la banque a été reçu. Dans ce cas, kflag est fixé à 1. Sinon il est fixé à 0.

slider32tablef est une banque de contrôleurs MIDI, utile lorsque l'on utilise un mélangeur MIDI comme le Kawai MM-16 ou autres pour changer n'importe quel paramètre du son en . Les messages de contrôle MIDI arrivant sur le port d'entrée sont convertis pour entrer dans l'intervalle iminN, imaxN, et une valeur initiale peut être fixée. On peut aussi utiliser de manière facultative une table de fonction non interpolée avec une courbe de traduction personnalisée pour obtenir, par exemple, des courbes de réponse exponentielles.

Si l'on n'a pas besoin d'une table de traduction, on fixe la valeur de ifnN à 0, sinon, on donne à ifnN un numéro de table de fonction valide. Lorsque l'on utilise une table de traduction (si ifnN reçoit une valeur non nulle faisant référence à une table de fonction déjà allouée), la valeur de initN doit être égale à celle de iminN ou à celle de imaxN, sinon la valeur de sortie initiale sera différente de celle spécifiée dans l'argument initN.

slider32tablef fournit une banque de 32 numéros différents de messages de contrôle MIDI. Il filtre le signal avant la sortie. Cela élimine les discontinuités dues à la basse résolution du MIDI (7 bit). La fréquence de coupure peut être réglée séparément pour chaque contrôleur (intervalle recommandé : 0.1 à 5 Hz).

Comme les arguments d'entrée et de sortie sont nombreux, on peut scinder la ligne en utilisant le caractère '\' (slash inversé) (nouveau dans la version 3.47) pour améliorer la lisibilité. L'utilisation de ces opcodes est considérablement plus efficace que celle de (ctrl7 et tonek) séparés, lorsque l'on a besoin de plus de contrôleurs.

slider32tablef ressemble beaucoup à la famille des opcodes slider32f et sliderNf (voir leur notice pour plus d'information), à la différence que la sortie n'est pas stockée dans des variables de taux-k, mais dans une table dénotée par l'argument ioutTable. Il est possible de définir un indice de base afin d'utiliser la même table pour plus d'un banc de contrôleurs (ou pour un autre usage).

Il est possible d'utiliser cet opcode conjointement avec FLslidBnk2Setk et avec FLslidBnk2, ce qui permet de synchroniser la position des valeurs MIDI à la position des widgets valueurs FLTK de FLslidBnk2. Noter qu'il faut spécifier les mêmes valeurs de min/max et de réponse linéaire/exponentielle dans sliderNtablef et dans FLslidBnk2. Il y a une exception si l'on utilise une réponse dans une table indexée au lieu d'une réponse lin/exp. Dans ce cas, afin d'obtenir un résultat utilisable, la réponse par table indéxée et les valeurs min/max ne doivent être fixées que dans FLslidBnk2, alors que dans sliderNtablef, il faut fixer une réponse linéaire, un minimum de zéro et un maximum de un dans tous les contrôleurs.

| Avertissement
Les opcodes slider32tablef ne sortent pas la valeur initiale immédiatement, mais seulement après quelques cycles-k parce que le filtre introduit un léger retard dans la sortie.

## Voir aussi

slider16, slider16f, slider32, slider64, slider64f, slider8, slider8f

## Crédits

Auteur : Gabriel Maldonado

Nouveau dans la version 5.06 de Csound.

Précédent | Niveau supérieur | Suivant
slider32table | Sommaire | slider64