aRts - Synthétiseur analogique en temps réel
Précédent | Chapitre 3. Concepts | Suivant

# 3.14. Instruments mappés(drum maps, etc.)

Les instruments mappés sont des instruments qui se comportent différemment suivant la hauteur. Vous pourriez par exemple construire un piano sur 5 octaves, en utilisant un échantillon pour chaque octave (en le transposant en conséquence). Ca sonne beaucoup mieux qu'avec l'utilisation d'un seul échantillon.

Vous pourriez aussi construire un drum map qui joue un échantillon de batterie spécifique par touche.

Pour obtenir ces paramètres, votre structure d'instrument doit être incomplète, par exemple, cela doit être un instrument normal qui joue un échantillon, mais l'échantillon n'est pas donné dans la structure. Au lieu de cela, il devrait y avoir un port qui accepte une chaîne de caractères qui se connecte au nom de fichier du lecteur d'échantillon. De cette façon, la structure est paramétrée.

Je sais que cela semble compliqué. Jetez simplement un coup d'oeil à play_wav, play_akai ou play_akai_stereo pour voir ce que je veux dire.

Maintenant, supposons que vous utilisiez un play_wav pour votre instrument, alors votre structure a le paramètre d'échantillon précédent. Vous pouvez maintenant créer un fichier nommé 909drums.arts-map, qui contient les lignes suivantes :

       1 structure=play_wav
       2 keygroup=35-35
       3 {
       4 sample=/usr/local/samples/909select/bt0a0a7.wav
       5 }
       6 keygroup=36-36
       7 {
       8 sample=/usr/local/samples/909select/bt0a0da.wav
       9 }
      10 keygroup=37-37
      11 {
      12 sample=/usr/local/samples/909select/bt3a0da.wav
      13 }
      14 keygroup=38-38
      15 {
      16 sample=/usr/local/samples/909select/bt7a0d7.wav
      17 }
      18 keygroup=39-39
      19 {
      20 sample=/usr/local/samples/909select/btaa0d0.wav
      21 }

Comme vous pouvez le voir, le paramètre manquant est spécifié différemment pour différents groupes de touches (ici les groupes de touches sont seulement d'une touche vers la même touche, mais vous pouvez facilement dire keygroup=30-50 pour spécifier la plage de touches).

Si vous avez plusieurs paramètres, ça fonctionne de la même façon, à ceci près que vous mettez plus d'une ligne dans les définitions des groupes de touches. Voici un petit extrait d'un fichier de mappage akai (pour un piano).

       1 structure=play_akai_stereo
       2 keygroup=0-30
       3 {
       4 rightsample=/var/samples/BOESEND.LOUD/BOE_LD_F#0-R
       5 leftsample=/var/samples/BOESEND.LOUD/BOE_LD_F#0-L
       6 }
       7 keygroup=31-33
       8 {
       9 rightsample=/var/samples/BOESEND.LOUD/BOE_LD_G#0-R
      10 leftsample=/var/samples/BOESEND.LOUD/BOE_LD_G#0-L
      11 }
      12 keygroup=34-34
      13 {
      14 rightsample=/var/samples/BOESEND.LOUD/BOE_LD_A#0-R
      15 leftsample=/var/samples/BOESEND.LOUD/BOE_LD_A#0-L
      16 }
      17 keygroup=35-36
      18 {
      19 rightsample=/var/samples/BOESEND.LOUD/BOE_LD_C1_-R
      20 leftsample=/var/samples/BOESEND.LOUD/BOE_LD_C1_-L
      21 }
      22 keygroup=37-38
      23 {
      24 rightsample=/var/samples/BOESEND.LOUD/BOE_LD_D1_-R
      25 leftsample=/var/samples/BOESEND.LOUD/BOE_LD_D1_-L
      26 }
      27 keygroup=39-39
      28 {
      29 rightsample=/var/samples/BOESEND.LOUD/BOE_LD_D#1-R
      30 leftsample=/var/samples/BOESEND.LOUD/BOE_LD_D#1-L
      31 }
      32 keygroup=40-40
      33 {
      34 rightsample=/var/samples/BOESEND.LOUD/BOE_LD_E1_-R
      35 leftsample=/var/samples/BOESEND.LOUD/BOE_LD_E1_-L
      36 }

Ces fichiers "map" apparaîtront automatiquement dans le "mapper" de l'instrument, dès que vous le copiez dans le répertoire arts/map (dans votre répertoire utilisateur).

Précédent | Sommaire | Suivant
Traitement audio full duplex | Niveau supérieur | Le standard du bus midi