Table des matières
Spécifications SoundFont SFZ
info
Ce document est une traduction réalisée à partir de cet article
par ardoisebleue.
Fil de discussion lié ...
Tu peux améliorer la traduction, amener des infos manquantes ou
otre korexions sur photes d'or-tôt-graf
Fil de discussion lié ...
Tu peux améliorer la traduction, amener des infos manquantes ou
otre korexions sur photes d'or-tôt-graf
- Version: 1.02, Dernière mise à jour de la spécification : 10/1/2010
Qu'est-ce que le format SFZ ?
Voir la page dédiée SFZ.
Le format SFZ est un fichier qui décrit comment arranger une collection d'échantillons performante.
L'objectif derrière le format SFZ est de fournir un format libre, simple, minimaliste et extensible à organiser, distribuer et utiliser des échantillons audio avec la meilleure qualité possible et la flexibilité la plus élevée possible.
Un fichier de format SFZ peut être joué dans notre « freeware SFZ player » . (concerne cake)
Les développeurs de soundware, logiciels et le matériel peuvent créer, utiliser et distribuer les fichiers au format SFZ gratuitement, que les applications soient gratuites ou commerciales.
Certaines des caractéristiques du format SFZ sont :
- supporte les échantillons 8/16/24/32-bit, mono ou stéréo.
- échantillons de n'importe quel taux d'échantillonnage (c. 44,1, 48, 88,2, 96, 176.4k, 192k, 384k)
- échantillons compressés et non compressés peuvent être combiné
- échantillons bouclés
- splits et layers de clavier illimités
- splits et layers de vélocité illimitée
- régions illimitées de lecture d'échantillon basée sur des contrôleurs MIDI (contrôleurs continus,pitch bend, canaux et aftertouch polyphonique, commutateurs de clavier) et les générateurs internes (compteurs aléatoires, séquences)
- lecture de l'échantillon sur les événements de contrôle MIDI
- régions unidirectionnelles et bidirectionnelles exclusives illimités (groupes de mute)
- régions de déclenchement de relâche illimité avec commande d'atténuation de relâche
- commandes de crossfade illimités
- déclenchement sur la première note et notes legato.
- lecture d'échantillon synchronisée sur le tempo de l'hôte. (concerne les greffons)
- générateurs d'enveloppe dédiés pour pitch, filtre et amplification.
- générateurs LFO dédié pour pitch, le filtre et amplification.
Structure du format SFZ
Le format SFZ est une collection de fichiers d'échantillon et d'un ou plusieurs fichiers de définition SFZ. Cette structure, qui contient plusieurs fichiers à la place d'un fichier unique est défini comme non-monolithique.
Deux types de fichiers d'échantillons ont été choisis pour être inclus dans le format SFZ : un format de base non compressé PCM (fichiers wave standard de Windows) et un format compressé libre de droits, réglable en qualité, (fichiers encodés ogg Vorbis).
L'inclusion d'un format compressé permet aux développeurs d'échantillons et les créateurs de SOUNDWARE de créer facilement des fichiers d'aperçu ou de démonstration dans un petit paquet afin qu'ils puissent être transférés avec une bande passante minimum, tout en conservant la fonctionnalité de performance complète.
Les deux formats sont 100% libre de droits, afin que les utilisateurs puissent les recréer ou copier.
Ils peuvent également être distribués librement sur le web (à condition que le contenu des fichiers soit libre de droit d'auteur).
Chaque fichier de définition .Sfz représente un ou une collection d'instruments. Un instrument est défini comme un ensemble de régions. Les régions comprennent la définition des contrôles d'entrée, les échantillons (fichiers WAV / OGG) et les paramètres de performance pour jouer ces échantillons.
Création d'un fichier de définition SFZ
Un fichier de définition. Sfz est juste un fichier texte. Par conséquent, il peut être créé en utilisant n'importe quel éditeur de texte (par exemple Notepad, Gedit).
Pourquoi non monolithique?
Alors que les deux formats monolithiques et non-monolithique présentent des avantages et des inconvénients, il y a plusieurs raisons pour que nous adoptions un exemple de format non monolithique. Des raisons technologiques et conceptuels peuvent difficilement être séparés, alors voici une explication de base :
La raison la plus importante est la limitation de taille de fichier d'un fichier non-monolithique sur des partitions FAT32.Les échantillons sont de très gros fichiers aujourd'hui, avec des milliers d'échantillons individuels recueillis dans des instruments solos, et déclenché selon de nombreuses combinaisons de commande d'entrée. Des échantillons avec une résolution élevée de bits (c'est à dire : des échantillons 24bit) et les paramètres d'échantillonnage élevé (96kHz, 192kHz) augmente la taille de la collection. Dans le cas d'un format non monolithique, la limitation s'applique toujours, mais elle s'applique à chaque échantillon au lieu de la somme de tous les échantillons, ce qui rend la limite pratiquement inatteignable. Bien que cette restriction ne s'applique pas au format NTFS, les partitions NTFS sont moins efficaces que les disques FAT32 en termes de performance de disque brut pour les applications de streaming.En outre, la modification d'un seul échantillon dans un fichier monolithique implique le chargement du fichier entier, et après édition, à nouveau enregistrer le fichier en entier sur le disque. Lorsque la taille de la collection est grande, l'opération de chargement et la sauvegarde est très chronophage.
Cependant, nous n'avons pas éludé la possibilité d'intégrer un format monolithique pour le format SFZ, dès que la structure du format est complètement mis en œuvre. De petits ensembles de son (ou les utilisateurs NTFS) pourraient choisir entre les deux options.
Pourquoi pas XML?
XML était en fait le premier choix pour le fichier de définition Sfz, principalement en raison de la simplicité du point de vue du développement que l'analyseur XML et le code de la transaction est déjà disponible.
Toutefois, XML a été conçu pour échanger des données sur le web. Musiciens, acteurs, compositeurs, concepteurs de SOUNDWARE et techniciens audio ne connaissent généralement pas XML.
En outre, une information de format d'échange universel conçu pour les applications générales, XML est inefficace (en termes d'information au sujet de la totalité des conditions de données), et l'édition d'un fichier XML nécessite l'utilisation d'un éditeur XML au lieu d'un éditeur de texte.
Un fichier SFZ est extrêmement explicite. La plupart des fonctionnalités d'un instrument peut être facilement comprises par la simple lecture du fichier.
Existe-t-il un éditeur SFZ ?
De rgc:audio, pas encore ... et pas de sitôt.
Cependant, nous travaillons avec plusieurs développeurs de l'industrie, les créateurs des logiciels de conversion d'échantillon pour implémenter le format SFZ dans leurs convertisseurs et éditeurs.
La nature du format permet de créer des instruments à l'aide d'autres logiciels à usage général, comme tableurs, traitements de texte, des langages de script simple et d'autres applications logicielles sur mesure personnalisés.
La mise en œuvre
Comment définir un instrument?
La composante de base d'un instrument est une région . Un instrument est défini par une ou plusieurs régions. Plusieurs régions peuvent être organisés dans un groupe. Les groupes permettent d'entrer des paramètres communs à plusieurs régions.
Une région peut inclure trois éléments principaux: la définition d'un échantillon, un ensemble de contrôles d'entrée et un ensemble de paramètres de performance.
Échantillon
L'op-code de l'échantillon définit quel fichier échantillon sera lu lorsque la région est définie.
Si un op-code de l'échantillon n'est pas présent dans la région, la région va jouer l'échantillon défini dans le dernier <groupe>. S'il n'y a pas de groupe précédemment défini, ou si le groupe précédent ne spécifie pas un op-code de l'échantillon, la région sera ignoré.
Les contrôles d'entrée
Les contrôles d'entrée définissent quand jouera l'échantillon défini dans une région, sur la base des valeurs de « real-world controller » et/ou des valeurs calculées en interne.
Les real-world controller sont les éléments que les joueurs, musiciens ou compositeurs utilisent réellement pour jouer la musique. Les valeurs internes sont calculés par le lecteur, comme les compteurs de séquence et les générateurs aléatoires.
Le format SFZ repose dans la spécification standard MIDI pour tous les contrôles d'entrée. Les contrôleurs de performance disponibles en MIDI, et c'est toujours la spécification qui prédomine pour les séquenceurs audio de logiciels dans toutes les plateformes.
Les contrôleurs de clavier sont l'exemple le plus significatif d'un générateur de contrôles d'entrée. Les autres générateurs pourraient être des guitares et des instruments MIDI à cordes, des contrôleurs à vent , des tambours et des contrôleurs de percussion. Avec des différences individuelles, ils génèrent tous un ensemble commun de messages définis dans la norme MIDI.
Un ensemble de contrôles d'entrée sont donc la combinaison d'une note MIDI jouée avec sa vélocité, de contrôleurs continus, du pitch bend, du canal et de l'«aftertouch polyphonique», etc.
Quand un ensemble de contrôles d'entrée correspond à la définition d'une région, l'échantillon spécifié dans cette région joue, en utilisant un ensemble de paramètres de performance lui-même défini dans la région.
A l'intérieur du fichier de définition, une région commence avec l'entête de <region>. Une région est définie entre deux entêtes de <région>, ou entre un entête <région> et un entête <group>, ou entre un en-tête de <région> et la fin du fichier.
À la suite de l'entête <region> un ou plusieurs opcodes peuvent être définis. Les opcodes sont des mots clés spéciaux qui indiquent au lecteur sur quoi, quand et comment jouer un échantillon.
Des opcode dans une région peuvent apparaître dans n'importe quel ordre, mais ils doivent être séparés par un ou plusieurs espaces ou de contrôles de tabulation. Des opcodes peuvent apparaître dans des lignes séparées d'une même région.
L' opcode et sa valeur assignée sont séparés par le signe égal (=), sans espace entre l'opcode et le signe. Par exemple:
échantillon=trombone_a4_ff.wav
échantillon=cello_a5_pp premier take.wav
sont des exemples valides, alors que:
échantillon = cello_a4_pp.wav
ne l'est pas (notez les espaces sur les côtés du signe =).
Les opcode de contrôles d'entrée et paramètres de performance sont facultatifs, ils risquent de ne pas être présent dans le fichier de définition. Une valeur par défaut «expectable» pour chaque paramètre est pré-définie, et sera utilisée si il n'y a pas de définition.
Exemple de définition de région :
<region> sample=440.wav
Cette définition de région programme le lecteur pour jouer le fichier échantillon 440.wav sur la totalité du clavier.
<region> lokey=64 hikey=67 sample=440.wav
Cette définition de région est un ensemble très basique de paramètres d'entrée (lokey et hikey, représentent les notes basses et hautes du clavier), et de définition de l'échantillon.
Celle-ci indique au lecteur de jouer l'échantillon 440.wav si une touche de l'intervalle 64 à 67 est jouée.
Il est très important de noter que tous les contrôles d'entrée définis dans une région utilise l’opérateur booléen ET (AND). En conséquence, toutes les conditions doivent être réunis pour que la région soit jouée.
Par exemple :
<region> lokey=64 hikey=67 lovel=0 hivel=34 locc1=0 hicc1=40 sample=440.wav
Cette définition de région ordonne au lecteur de jouer l'échantillon 440.wav si un événement note reçu est l'intervalle 64-67 ET a une vélocité dans l'intervalle 0-34 ET que le dernier message MIDI «modulation wheel» (cc1) était dans l'intervalle 0-40.
Paramètres de Performance
Les paramètres de performances définissent comment l'échantillon spécifié doit être jouer, une fois que la région est définie pour jouer.
Un simple exemple de paramètre de performance est le volume. Il définit à quel niveau sonore l'échantillon sera joué quand la région sera joué.
Groupes
Comme indiqué précédemment, les groupes permettent d'entrer des paramètres communs à plusieurs régions. Un groupe est défini avec l'opcode <group> et les paramètres énumérés après ce dernier jusqu'au prochain opcode <group>, ou jusqu'à la fin du fichier.
''<group>"
ampeg_attack=0.04 ampeg_release=0.45
<region> sample=trumpet_pp_c4.wav key=c4
<region> sample=trumpet_pp_c#4.wav key=c#4
<region> sample=trumpet_pp_d4.wav key=d4
<region> sample=trumpet_pp_d#4.wav key=d#4
<group>
<region> sample=trumpet_pp_e4.wav key=e4 // previous group parameters reset
Commentaires
Les lignes de commentaires peuvent être insérés n'importe où dans le fichier. Une ligne de commentaire commence par une barre oblique ("/"), et elle s'étend jusqu'à l'extrémité de la ligne.
<region>
sample=trumpet_pp_c4.wav
// middle C in the keyboard
lokey=60
// pianissimo layer
lovel=0 hivel=20 // another comment
Où les fichiers doivent-ils être stockés?
Les fichiers d'échantillon peuvent être stockés dans le même dossier où le fichier de définition .sfz réside, ou dans tout autre endroit, il faut préciser relativement l'emplacement du fichier de définition. En conséquence :
sample=trumpet_pp_c3.wav text''
''sample=samples\trumpet_pp_c3.wav""
sample=..\trumpet_pp_c3.wav
sont des noms d'échantillons valides.
Sinon, le lecteur peut spécifier un ou plusieurs «dossiers utilisateur», où il va chercher des échantillons si elle ne les trouve pas dans le même dossier que le fichier de définition.
Que peut faire le format SFZ
Le format SFZ vise à permettre à d'organiser une collection d'échantillons de manière flexible et extensible. C'est au lecteur de décider quelle fonctionnalité il veut mettre en œuvre.
Unités
Toutes les unités dans le format SFZ sont des valeurs réelles. Les fréquences sont exprimées en Hertz, pitches en cents, des amplitudes en pourcentage et les volumes en décibels.Les notes sont exprimées en numéros de note MIDI, ou dans les noms des notes en fonction de la convention de notation internationale (IPN). Selon ces règles, le milieu C dans le clavier est C4 et le numéro de note MIDI 60.
Liste des Opcodes
Définition de l'échantillon
Opcode | Description | Type | Default | Range |
---|---|---|---|---|
sample (échantillon ) | Cet opcode définit quel fichier échantillon jouera la région. La valeur de cet opcode est le nom du fichier de l'échantillon, y compris l'extension. Le nom du fichier doit être stocké dans le même dossier que le fichier de définition et/ou spécifié en chemin relatif par rapport au fichier de définition. Si le fichier échantillon n'est pas trouvé, le lecteur va ignorer tout le contenu de la région. Les noms longs et des noms avec des espaces vierges et autres caractères spéciaux (à l'exception du caractère =) sont autorisés dans la définition de l'échantillon. ATTENTION : il est possible que le synthétiseur en interprètant le fichier SFZ fasse une différence entre les majuscules et les minuscules d'où la chaine de caractères doit correspondre parfaitement au nom du fichier son. L'échantillon jouera sans changement tant qu'une note égale à la valeur de l'opcode pitch_keycenter sera jouée. Si pitch_keycenter n'est pas défini pour la région, l'échantillon sera jouer par rapport à la note 60 (milieu C). Exemples: sample=guitar_c4_ff.wav sample=dog kick.ogg sample=out of tune trombone (redundant).wav sample=staccatto_snare.ogg |
string (filename) |
Contrôles d'entrée
Opcode | Description | Type | Default | Range |
---|---|---|---|---|
lochan hichan |
Si les notes reçues ont un canal MIDI entre lochan et Hichan, la région sera jouée. Exemples: lochan=1 hichan=5 |
entier | lochan=1 hichan=16 |
1 à 16 |
lokey hikey key |
Si une note supérieure ou égale à lokey et égale ou inférieure à hikey est jouée la région sera jouée. lokey et hikey peuvent être données avec des numéros de note MIDI (0 à 127) ou par les noms de note MIDI (C-1 to G9) L'opcode key place lokey, hikey et pitch_keycenter sur la même note. Exemples: lokey=60 // middle C hikey=63 // middle D# lokey=c4 // middle C hikey=d#4 // middle D# hikey=eb4 // middle Eb (D#) |
entier | lokey=0, hikey=127 |
0 à 127 C-1 à G9 |
lovel hivel |
Si une note avec une valeur de vélocité midi supérieure ou égale à lovel et égale ou inférieure à hivel est pressée la région sera jouée. | entier | Lovel=0, hivel=127 |
0 à 127 |
loccN hiccN |
Définit la plage du dernier message de contrôle continu N pour que la région soit jouée, N désignant un numéro de contrôle continue MIDI. | entier | LoccN=0, hiccN=127 pour tout les contrôleurs |
0 à 127 |
lobend hibend |
Définit la plage du dernier message de Pitch Bend nécessaire pour que la région soit jouée. Exemples: lobend=0 hibend=4000 La région ne jouera que si le dernier message de Pitch Bend reçu est dans la gamme 0 ~ 4000. |
entier | lobend=-8192, hibend=8192 |
-8192 à 8192 |
lochanaft hichanaft |
Définit la plage du dernier message «Channel Aftertouch» nécessaire pour que la région soit jouée. Exemples: lochanaft=30 hichanaft=100 La région ne jouera que si le dernier message est dans la gamme de 30 ~ 100. |
entier | lochanaft=0, hichanaft=127 |
0 à 127 |
lopolyaft hipolyaft |
Définit la plage du dernier message «Polyphonic Aftertouch» nécessaire pour la région à jouer. Les informations de la note reçue dans le message «Polyphonic Aftertouch» n'est pas pertinent. Exemples: lopolyaft=30 hipolyaft=100 La région ne jouera que si le dernier message reçu est dans la gamme de 30 ~ 100. |
entier | lopolyaft=0, hipolyaft=127 |
0 à 127 |
lorand hirand |
Valeurs aléatoires. Le joueur va générer un nouveau nombre aléatoire sur chaque événement NOTE, dans la gamme 0 ~ 1. La région va jouer si le nombre aléatoire est égale ou supérieure à Lorand, et inférieure à hirand. Exemples: lorand=0.2 hirand=0.4 lorand=0.4 hirand=1 |
décimale | lorand = 0 hirand = 1 |
0 à 1 |
lobpm hibpm |
Valeur du tempo. La région sera jouée si le tempo de est >= lobpm <= hibpm. Exemples: lobpm=0 hibpm=100 lobpm=100 hibpm=200.5 |
décimale | lobpm = 0 hibpm = 500 |
0 à 500 bpm |
seq_length | Longueur de séquence. Le lecteur conservera un compteur interne créant une séquence d'évènements consécutifs "note-on" pour chaque région. Cette séquence commence à 1 et se réinitialise après "seq_length". Exemples: seq_length=3 |
entier | 1 | 1 à 100 |
seq_position | Position de la séquence. La région jouera si le compteur interne de séquence = seq_position. Exemples: seq_length=4 seq_position=2 Dans l'exemple ci-dessus, la région sera jouée sur la deuxième note tous les quatre notes. |
entier | 1 | 1 à 100 |
sw_lokey sw_hikey |
Définit la plage du clavier utilisable comme sélecteur de déclenchement pour l'opcode sw_last.sw_lokey et sw_hikey peuvent être données avec des numéros de note MIDI (0 à 127) ou par les noms de note MIDI (C-1 à G9). Exemples: sw_lokey=48 sw_hikey=53 |
entier | sw_lokey=0, sw_hikey=127 |
0 à 127 C-1 à G9 |
sw_last | Autorise la région à jouer si la dernière touche enfoncée dans la gamme spécifiée par sw_lokey et sw_hikey = sw_last.sw_last peuvent être données avec des numéros de note MIDI (0 à 127) ou par les noms de note MIDI (C-1 à G9) Exemples: sw_last=49 |
entier | 0 | 0 à 127 C-1 à G9 |
sw_down | Autorise la région à jouer si la touche = sw_down est enfoncée. Cette touche doit être dans la gamme spécifiée par sw_lokey et sw_hikey.sw_down peut être donnée avec un numéro de note MIDI (0 à 127) ou par un nom de note MIDI (C-1 à G9) Exemples: sw_down=Cb3 |
entier | 0 | 0 à 127 C-1 to G9 |
sw_up | Autorise la région à jouer si la touche = sw_up n'est pas enfoncée. Cette touche doit être dans la gamme spécifiée par sw_lokey et sw_hikey.sw_up peut être donné avec un numéro de note MIDI (0 à 127) ou par un nom de note MIDI (C-1 à G9) Exemples: sw_up=49 |
entier | 0 | 0 à 127 C-1 to G9 |
sw_previous | Valeur de la note précédente. La région jouera si le dernier message de note = sw_previous. sw_previous peut être donné avec un numéro de note MIDI (0 à 127) ou par un nom de note MIDI (C-1 à G9) Exemples: sw_previous=60 |
entier | none | 0 à 127 C-1 to G9 |
sw_vel | Cet opcode permet de forcer velocity pour la région avec la vélocité de la note précédente. Les valeurs peuvent être: current : Région utilise velocity de la note actuelle. preview : Région utilise velocity de la note précédente. Exemples: sw_vel=previous |
texte | current | Current, previous |
trigger | Définit le déclecheur qui sera utilisé pour l'échantillon à jouer. Les valeurs peuvent être: Attack : (par défaut): Région jouera la note. Release : Région jouera sur la fin de note. La velocity utilisée pour jouer l'échantillon de la fin de note est la valeur de velocity du (précédent) message de fin de note correspondante. First : Région jouera la note, mais s'il n'y a pas d'autre note passée (staccato, ou la première note dans une phrase legato). legato : Région jouera la note, mais seulement si il y a une note en cours (notes après la première note dans une phrase legato). Exemples: trigger=release |
texte | attack | attack, release, first, legato |
group | Numéro de groupe exclusif pour cette région. Exemples: group=3 group=334 |
entier | 0 | 0 à 4Gb (4294967296) |
off_by | Désactiver région selon groupe. Quand une nouvelle région avec un certain numéro de groupe joué = off_by, cette région sera arrêtée. Exemples: off_by=3 off_by=334 |
entier | 0 | 0 à 4Gb (4294967296) |
off_mode | Mode de désactivation de région. Cet opcode déterminera comment une région est arrêtée avec un opcode off_by. Les valeurs peuvent être: fast : La voix sera éteinte immédiatement. Les paramètres de sortie n'auront aucun effet. normal : La région passera en phase de release. Tous les générateurs d'enveloppe entreront en phase de release, et la région prendra fin avec la fin du générateur d'enveloppe de l'amplification. Exemples: off_mode=fast off_mode=normal |
text | fast | fast, normal |
on_loccN on_hiccN |
Déclencheur de l'échantillon sur le contrôle continu MIDI N, N désignant un numéro de contrôle continue MIDI. Si un message de contrôle MIDI avec une valeur comprise entre on_loccN et on_hiccN est reçu, la région sera jouée. Exemples: on_locc1=0 on_hicc1=0 La région jouera à la réception d'un message MIDI CC1 (modulation wheel) avec une valeur=0. |
entier | -1 (unassigned) | 0 à 127 |
Lecteur d'échantillon (Sample Player)
Opcode | Description | Type | Default | Range |
---|---|---|---|---|
delay | Délai en seconds pour démarrer la région. Si une valeur est donnée, la région sera jouée après le temps spécifié. Si la région reçoit un message fin de note avant la fin du délai, la région ne sera pas jouée. Toutes phases de delay des générateurs d'enveloppe ne commence à compter qu'après le temps de delay de la région. Exemples: delay=1 delay=0.2 |
décimale | 0 | 0 à 100 seconds |
delay_random | Délai aléatoire pour une région, en secondes.Si la région reçoit un message note-off avant que le délai soit terminé, la région ne jouera pas. Exemples: delay_random=1 delay_random=0.2 |
décimale | 0 | 0 à 100 seconds |
delay_ccN | Temps de retard de la région après que des messages de contrôle continu MIDI N soient reçus. Si la région reçoit un message note-off avant la fin du délai, la région ne jouera pas. Exemples: delay_cc1=1 delay_cc2=.5 |
décimale | 0 | 0 à 100 seconds |
offset | Décalage utilisé pour jouer l'échantillon audio, en nombre d'échantillon. Le lecteur va reproduire les échantillons en commençant par le premier échantillon dans le fichier, sauf si le décalage est spécifié. Dans ce cas, il commencera la lecture du fichier à partir de l'échantillon dont le numéro = offset. Exemples: offset=3000 offset=32425 |
entier | 0 | 0 à 4Gb (4294967296) |
offset_random | Décalage aléatoire ajouté au décalage de la région. Exemples: offset_random=300 offset_random=100 |
entier | 0 | 0 à 4Gb (4294967296) |
offset_ccN | Décalage utilisé pour jouer l'échantillon selon la dernière position du contrôle continu MIDI N. Cet opcode est utile pour préciser un point de départ alternatif de l'échantillon basé sur les contrôleurs MIDI. Exemples: offset_cc1=3000 offset_cc64=1388 |
entier | 0 | 0 à 4Gb (4294967296) |
end | Le point final de l'échantillon audio, en nombre d’échantillon. Le lecteur va reproduire l'ensemble de l'échantillon si la fin n'est pas précisée. Si la valeur finale est égale à -1, l'échantillon ne jouera pas. Marquer une fin de région avec -1 peut être utile pour définir une région silencieuse et désactiver d'autres régions à l'aide des opcodes group et off_by. Exemples: end=133000 end=4432425 |
entier | 0 | 0 à 4Gb (4294967296) |
count | Le nombre de fois où l'échantillon sera joué. Si cet opcode est spécifié, l'échantillon va redémarrer autant de fois que défini. Les générateurs d'enveloppe ne seront pas déclenchées à nouveau au redémarrage de l'échantillon. Lorsque cet opcode est défini, loop_mode est automatiquement réglé sur one_shot. Exemples: count=3 count=2 |
entier | 0 | 0 à 4Gb (4294967296) |
loop_mode | Mode en boucle. Si le mode en boucle n'est pas spécifié, chaque échantillon sera lu selon son mode de boucle prédéfinie. Autrement dit, le joueur devra jouer l'échantillon en boucle en utilisant la première boucle définie, si disponible. Si aucune boucle n'est définie, le son jouera sans bouclage. L'opcode loop_mode permet de jouer dans le mode non-bouclé des échantillons avec des boucles définies. Les valeurs possibles sont: no_loop : pas de boucle. Le sample se jouera du début à la fin, ou jusque une fin de note. one_shot : le sample sera lu du début à la fin, en ignorant les fin de note. Ce mode est activé automatiquement si l'opcode de comptage est défini. loop_continuous : une fois que le lecteur atteint point de boucle du sample, la boucle jouera jusqu'à l'extinction de la note, c'est à dire jusqu'a la fin de la phase de relâchement. loop_sustain : le lecteur lira la boucle tant que la note est tenue, en maintenant la touche enfoncée ou en utilisant la pédale de sustain (CC64). Le reste de l'échantillon audio sera lu après le relâchement de la note. Exemples: loop_mode=no_loop loop_mode=loop_continuous |
text | no_loop pour les samples définis sans boucle, loop_continuous pour les samples avec boucles |
n/a |
loop_start | Point de départ de la boucle. Si loop_start n'est pas spécifié et que l'échantillon possède une boucle, le point de départ de l'échantillon sera utilisé. Si loop_start est spécifié, il remplace le départ de boucle défini dans le sample. Cet opcode n'aura aucun effet si loop_mode est initialisé à no_loop. Exemples: loop_start=4503 loop_start=12445 |
entier | 0 | 0 à 4Gb (4294967296) |
loop_end | Le point de fin de boucle. Cet opcode n'aura aucun effet si loopmode est initialisé sur no_loop. Si loop_end n'est pas spécifié et que le sample contient une boucle, le point de fin de boucle du sample sera utilisé. Si loop_end est spécifié, il remplace le point de fin de boucle définie dans l'échantillon. Exemples: loop_end=34503 loop_end=212445 |
entier | 0 | 0 à 4Gb (4294967296) |
sync_beats | Région jouant en synchronisation avec la position de l'hôte (concerne les greffons). Quand sync_beats est spécifié et, après des instructions de contrôles d'entrée pour jouer la région, la lecture sera reportée jusqu'à ce que le prochain multiple de la valeur spécifiée soit rencontré. Exemples: sync_beats=4 Dans cet exemple, si la note est enfoncée dans le 2e temps de la piste actuelle, cette note ne sera lue qu'après le 4° battement. Cet opcode ne fonctionne que dans des hôtes contenant des informations de position dans le morceau (vstTimeInfo ppqPos). |
décimale | 0 | 0 to 32 beats |
sync_offset | Décalage de la région jouant en synchronisation avec la position de l'hôte. Quand sync_beats est spécifié et après des instructions de contrôles d'entrée pour jouer la région, la lecture sera reportée à la valeur sync_beats + sync_offset. Exemples: sync_beats=4 sync_offset=1 Dans cet exemple, si la note est enfoncée dans le 2e temps de la piste actuelle, cette note ne sera lue qu'après le 5° battement. Cet opcode ne fonctionne que dans des hôtes contenant des informations de position dans le morceau (vstTimeInfo ppqPos). |
décimale | 0 | 0 à 32 beats |
Pitch
Opcode | Description | Type | Default | Range |
---|---|---|---|---|
transpose | Valeur de transposition pour la région, qui doit être appliquée au sample. Exemples: transpose=3 transpose=-4 |
Entier | 0 | -127 à 127 |
tune | Accordage fin pour le sample. La portée est de ±1 demi-ton, entre -100 et 100. Seule les valeurs négatives doivent être précédées de leur signe. Exemples: tune=33 tune=-30 tune=94 |
Entier | 0 | -100 à 100 |
pitch_keycenter | Touche de référence (root key) pour l'échantillon. Exemples: pitch_keycenter=56 pitch_keycenter=c#2 |
Entier | 60 (C4) | -127 à 127 C-1 à G9 |
pitch_keytrack | Dans la région, cette valeur définit comment le pitch change à chaque note. La valeur par défaut est de 100, ce qui signifie changement de hauteur de cent cents (un demi-ton) par note jouée.Définir cette valeur à zéro signifie que toutes les notes de la région joueront le même pitch, particulièrement utile lors du mappage des sons de batterie. Exemples : pitch_keytrack=20 pitch_keytrack=0 |
Entier | 100 cents | -1200 à 1200 |
pitch_veltrack | Suivi de la vélocité par le pitch, représente comment le pitch change avec la vélocité de la note reçue, en cents. Exemples: pitch_veltrack=0 pitch_veltrack=1200 |
entier | 0 | -9600 à 9600 cents |
pitch_random | Variation aléatoire du pitch pour la région, en cents. Le pitch aléatoire sera centré, avec des valeurs positives et négatives. Exemples: pitch_random=100 pitch_random=400 |
entier | 0 | 0 à 9600 cents |
bend_up | Plage de variaton du pitch lorsque la molette de variation ou manette est déplacée vers le haut Exemples: bend_up=1200 bend_up=100 |
entier | 200 | -9600 à 9600 cents |
bend_down | Plage de variation de la hauteur lorsque la molette de variation ou manette est déplacée vers le bas Exemples: bend_up=1200 bend_up=100 |
entier | -200 | -9600 à 9600 cents |
bend_step | Pas de variation du pitch, en cents. Exemples: bend_step=100 // glissando en demiton bend_step=200 // glissando en ton |
Entier | 1 | 1 à 1200 |
Pitch EG
Opcode | Description | Type | Default | Range |
---|---|---|---|---|
pitcheg_delay | Temps du délai pitch EG, en secondes. C'est le temps écoulé depuis le début de la note jusque la phase d'attaque. Exemples: pitcheg_delay=1.5 pitcheg_delay=0 |
décimale | 0 sec | 0 à 100 |
pitcheg_start | Niveau de début du Pitch EG, en pourcentage. Exemples: pitcheg_start=20 pitcheg_start=100 |
décimale | 0,00% | 0 à 100 % |
pitcheg_attack | Durée de attack du Pitch EG, en secondes. Exemples: pitcheg_attack=1.2 pitcheg_attack=0.1 |
décimale | 0 sec | 0 à 100 |
pitcheg_hold | Durée du Pitch EG, en secondes. Pendant la phase de maintien, la sortie EG restera à cette valeur maximale. Exemples: pitcheg_hold=1.5 pitcheg_hold=0.1 |
décimale | 0 sec | 0 à 100 |
pitcheg_decay | Temps de décroissance du pitch, en secondes. Exemples: pitcheg_decay=1.5 pitcheg_decay=3 |
décimale | 0 sec | 0 à 100 |
pitcheg_sustain | Temps de maintien du pitch EG (après le relachement de la note), en pourcentage. Exemples: pitcheg_release=1.34 pitcheg_release=2 |
décimale | 0,00% | 0 à 100 % |
pitcheg_release | Temps de release du pitch EG (après le relachement de la note), en secondes. Exemples: pitcheg_release=1.34 pitcheg_release=2 |
décimale | 0 sec | 0 à 100 |
pitcheg_depth | Profondeur du pitch EG, en cents. Exemples: pitcheg_depth=1200 pitcheg_depth=-100 |
Entier | 0 cents | -12000 à 12000 |
pitcheg_vel2delay | Effet de la vitesse sur le temps de délai de pitchEG, en secondes Exemples: pitcheg_vel2delay=1.2 pitcheg_vel2delay=0.1 Le temps du délai sera calculé comme suit : delay time = pitcheg_delay+pitcheg_vel2delay*velocity/127 |
décimale | 0 sec | -100 à 100 |
pitcheg_vel2attack | Effet de la vitesse sur le temps d'attack de pitchEG, en secondes Exemples: pitcheg_vel2attack=1.2 pitcheg_vel2attack=0.1 Le temps d'attack sera calculé comme suit: attack time = pitcheg_attack+pitcheg_vel2attack*velocity/127 |
décimale | 0 sec | -100 à 100 |
pitcheg_vel2hold | Effet de la vitesse sur le temps de maintien de pitchEG, en secondes Exemples: pitcheg_vel2hold=1.2 pitcheg_vel2hold=0.1 Le temps de maintien sera calculé comme suit : hold time = pitcheg_hold+pitcheg_vel2hold*velocity/127 |
décimale | 0 sec | -100 à 100 |
pitcheg_vel2decay | Effet de la vitesse sur le temps de décroissance du pitchEG, en secondes Exemples: pitcheg_vel2decay=1.2 pitcheg_vel2decay=0.1 Le temps de décroissance sera calculé comme suit: decay time = pitcheg_decay+pitcheg_vel2decay*velocity/127 |
décimale | 0 sec | -100 à 100 |
pitcheg_vel2sustain | Effet de la vitesse sur le maintien du niveau du pitchEG, en pourcentage Exemples: pitcheg_vel2sustain=30 pitcheg_vel2sustain=20 Le maintien de niveau sera calculé comme suit : sustain level = pitcheg_sustain+pitcheg_vel2sustain |
décimale | 0,00% | -100 à 100 % |
pitcheg_vel2release | Effet de la vitesse sur le temps de release du pitchEG, en secondes Exemples: pitcheg_vel2release=1.2 pitcheg_vel2release=0.1 Le temps de release sera calculé comme suit : release time = pitcheg_release+pitcheg_vel2release*velocity/127 |
décimale | 0 sec | -100 à 100 |
pitcheg_vel2depth | Effet de la vitesse sur la profondeur du pitchEG, en cents Exemples: pitcheg_vel2depth=100 pitcheg_vel2depth=-1200 |
Entier | 0 cents | -12000 à 12000 |
Pitch LFO
Opcode | Description | Type | Default | Range |
---|---|---|---|---|
pitchlfo_delay | Le temps avant le départ de l'oscillation LFO du pitch, en secondes. Exemples: pitchlfo_delay=1 pitchlfo_delay=0.4 |
décimale | 0 | 0 à 100 |
pitchlfo_fade | Temps de l'effet de fade-in du pitch LFO. Exemples: pitchlfo_fade=1 pitchlfo_fade=0.4 |
décimale | 0 | 0 à 100 |
pitchlfo_freq | Fréquence du pitch LFO, en hertz Exemples: pitchlfo_freq=0.4 pitchlfo_freq=1.3 |
décimale | 0 | 0 à 20 Hertz |
pitchlfo_depth | Profondeur du Pitch LFO, en cents. Exemples: pitchlfo_depth=1 pitchlfo_depth=4 |
entier | 0 cents | -1200 à 1200 |
pitchlfo_depthccN | Profondeur du pitch LFO à la réception d'un message de controleur continu MIDI, en cents. Exemples: pitchlfo_depthcc1=100 pitchlfo_depthcc32=400 |
entier | 0 cents | -1200 à 1200 |
pitchlfo_depthchanaft | Profondeur du pitch LFO à la réception d'un message de canal aftertouch MIDI, en cents. Exemples: pitchlfo_depthchanaft=100 pitchlfo_depthchanaft=400 |
entier | 0 cents | -1200 à 1200 |
pitchlfo_depthpolyaft | Profondeur du pitch LFO à la réception d'un message de polyphonie aftertouch MIDI, en cents. Exemples: pitchlfo_depthpolyaft=100 pitchlfo_depthpolyaft=400 |
entier | 0 cents | -1200 à 1200 |
pitchlfo_freqccN | Changement de fréquence du pitch LFO à la réception d'un message de controleur MIDI N, en hertz. Exemples: pitchlfo_freqcc1=5 pitchlfo_freqcc1=-12 |
décimale | 0 Hertz | -200 à 200 |
pitchlfo_freqchanaft | Changement de fréquence du pitch LFO à la réception d'un message de canal aftertouch MIDI, en hertz. Exemples: pitchlfo_freqchanaft=10 pitchlfo_freqchanaft=-40 |
décimale | 0 Hertz | -200 à 200 |
pitchlfo_freqpolyaft | Changement de fréquence du pitch LFO à la réception d'un message de polyphonie aftertouch MIDI, en hertz. Exemples: pitchlfo_freqpolyaft=10 pitchlfo_freqpolyaft=-4 |
décimale | 0 Hertz | -200 à 200 |
Filtre
Opcode | Description | Type | Default | Range |
---|---|---|---|---|
fil_type | Type de filtre. Les dénominations légales sont: lpf_1p : one-pole low pass filter (6dB/octave). hpf_1p : one-pole high pass filter (6dB/octave). lpf_2p : two-pole low pass filter (12dB/octave). hpf_2p : two-pole high pass filter (12dB/octave). bpf_2p : two-pole band pass filter (12dB/octave). brf_2p : two-pole band rejection filter (12dB/octave). Exemples: fil_type=lpf_2p fil_type=hpf_1p |
text | lpf_2p | lpf_1p, hpf_1p, lpf_2p, hpf_2p, bpf_2p, brf_2p |
cutoff | La fréquence de coupure de filtre, en hertz. Si cutoff n'est pas spécifié, le filtre sera désactivé, avec pour conséquence la chute de CPU dans le lecteur. (with the consequent CPU drop in the player.) Exemples: cutoff=343 cutoff=4333 |
décimale | filter disabled | 0 à SampleRate/2 |
cutoff_ccN | Variation de la fréquence de coupure du filtre à la réception d'un message d'un controleur continu MIDI, en cents. Exemples: cutoff_cc1=1200 cutoff_cc2=-100 |
entier | 0 cents | -9600 à 9600 |
cutoff_chanaft | Variation de la fréquence de coupure du filtre à la réception d'un message d'un canal aftertouch MIDI, en cents. Exemples: cutoff_chanaft=1200 cutoff_chanaft=-100 |
entier | 0 cents | -9600 à 9600 |
cutoff_polyaft | Variation de la fréquence de coupure du filtre à la réception d'un message de polyphonie aftertouch MIDI, en cents. Exemples: cutoff_polyaft=1200 cutoff_polyaft=-100 |
entier | 0 cents | -9600 à 9600 |
resonance | Valeur de la résonance de la fréquence de coupure du filtre, en décibels. Exemples: resonance=30 |
décimale | 0 dB | 0 to 40 dB |
fil_keytrack | tracking du filtre du clavier (changement de coupure pour chaque touche) en cents. Exemples: fil_keytrack=100 fil_keytrack=0 |
entier | 0 cents | 0 à 1200 |
fil_keycenter | Touche centrale pour le tracking de filtre du clavier. Dans cette touche, le tracking du filtre du clavier n'aura aucun effet Exemples: fil_keycenter=60 fil_keycenter=48 |
entier | 60 | 0 à 127 |
fil_veltrack | Tracking de vitesse du filtre, représente la façon dont la fréquence de coupure varie avec la vitesse de la note reçue. Exemples: fil_veltrack=0 fil_veltrack=1200 |
entier | 0 cents | -9600 à 9600 |
fil_random | Cutoff aléatoire ajouté à la région, en cents. Exemples: fil_random=100 fil_random=400 |
entier | 0 cents | -9600 à 9600 |
Filtre EG
Opcode | Description | Type | Default | Range |
---|---|---|---|---|
fileg_delay | Temps du délai du Filtre EG. C'est le temps écoulé depuis la note jusqu'au début de la phase d'attaque. Exemples: fileg_delay=1.5 fileg_delay=0 |
décimale | 0 sec | 0 à 100 |
fileg_start | Niveau de départ du filtre EG, en %. Exemples: fileg_start=20 fileg_start=100 |
décimale | 0 % | 0 à 100 % |
fileg_attack | Temps d'attack du flitre EG. Exemples: fileg_attack=1.2 fileg_attack=0.1 |
décimale | 0 sec | 0 à 100 |
fileg_hold | Temps d'attent du filtre EG. Pendant la phase de maintien, la sortie EG restera à sa valeur maximale. Exemples: fileg_hold=1.5 fileg_hold=0.1 |
décimale | 0 sec | 0 à 100 |
fileg_decay | Temps de décroissance du filtre EG. Exemples: fileg_decay=1.5 fileg_decay=3 |
décimale | 0 sec | 0 à 100 |
fileg_sustain | Niveau de maintien du filtre EG. Exemples: fileg_sustain=40.34 fileg_sustain=10 |
décimale | 0 % | 0 à 100 % |
fileg_release | Temps de release du filter EG ( après relachement de la note). Exemples: fileg_release=1.34 fileg_release=2 |
décimale | 0 sec | 0 à 100 |
fileg_depth | Profondeur pour le filtre EG, en cents. Exemples: fileg_depth=1200 fileg_depth=-100 |
entier | 0 cents | -12000 à 12000 |
fileg_vel2delay | Effet de la vitesse sur le délai du filtre EG. Exemples: fileg_vel2delay=1.2 fileg_vel2delay=0.1 le temps du délai est calculé comme suit : delay time = fileg_delay+fileg_vel2delay*velocity/127 |
décimale | 0 sec | -100 à 100 |
fileg_vel2attack | Effet de la vitesse sur le temps d'attack du filtre EG. Exemples: fil_vel2attack=1.2 fil_vel2attack=0.1 le temps d'attack est calculé comme suit : attack time = fileg_attack+fileg_vel2attack*velocity/127 |
décimale | 0 sec | -100 à 100 |
fileg_vel2hold | Effet de la vitesse sur le temps de maintien du filtre EG. Exemples: fileg_vel2hold=1.2 fileg_vel2hold=0.1 le temps de maintien est calculé comme suit : hold time = fileg_hold+fileg_vel2hold*velocity/127 |
décimale | 0 sec | -100 à 100 |
fileg_vel2decay | Effet de la vitesse sur le temps de décroissance du filtre EG. Exemples: fileg_vel2decay=1.2 fileg_vel2decay=0.1 le temps de décroissance est calculé comme suit : decay time = fileg_decay+fileg_vel2decay*velocity/127 |
décimale | 0 sec | -100 à 100 |
fileg_vel2sustain | Effet de la vitesse sur le niveau de sustain du filtre EG. Exemples: fileg_vel2sustain=30 fileg_vel2sustain=-30 le niveau de sustain est calculé comme suit : sustain level = fileg_sustain+fileg_vel2sustain Le résultat doit être entre 0 et 100%. |
décimale | 0 % | 0 à 100 % |
fileg_vel2release | Effet de la vitesse sur le temps de release du filtre EG. Exemples: fileg_vel2release=1.2 fileg_vel2release=0.1 le temps de release est calculé comme suit : release time = fileg_release+fileg_vel2release*velocity/127 |
décimale | 0 sec | -100 à 100 |
fileg_vel2depth | Effet de la vitesse sur la profondeur du filtre EG. | entier | 0 cents | -12000 à 12000 |
Filter LFO
Opcode | Description | Type | Default | Range |
---|---|---|---|---|
fillfo_delay | Délai avant le départ des oscillations du LFO. Exemples: fillfo_delay=1 fillfo_delay=0.4 |
décimale | 0 sec | 0 à 100 |
fillfo_fade | Durée de l'effet de fade-in du Filtre LFO . Exemples: fillfo_fade=1 fillfo_fade=0.4 |
décimale | 0 sec | 0 à 100 |
fillfo_freq | Fréquence du filtre LFO. Exemples: fillfo_freq=0.4 fillfo_freq=1.3 |
décimale | 0 hertz | 0 to 20 hertz |
fillfo_depth | Profondeur du filtre LFO. Exemples: fillfo_depth=1 fillfo_depth=4 |
entier | 0 cents | -1200 à 1200 |
fillfo_depthccN | Profondeur de filtre LFO à la réception d'un message de contrôle MIDI. Exemples : fillfo_depthcc1=100 fillfo_depthcc32=400 |
entier | 0 cents | -1200 à 1200 |
fillfo_depthchanaft | Profondeur de filtre LFO à la réception d'un message aftertouch MIDI. Exemples : fillfo_depthchanaft=100 fillfo_depthchanaft=400 |
entier | 0 cents | -1200 à 1200 |
fillfo_depthpolyaft | Profondeur de filtre LFO à la réception d'un message polyphonie aftertouch MIDI. Exemples : fillfo_depthpolyaft=100 fillfo_depthpolyaft=400 |
entier | 0 cents | -1200 à 1200 |
fillfo_freqccN | Changement de fréquence du filtre LFO, à la réception d'un message de controleur MIDI N. Exemples : fillfo_freqcc1=5 fillfo_freqcc1=-12 |
décimale | 0 hertz | -200 to 200 |
fillfo_freqchanaft | Changement de fréquence du filtre LFO, à la réception d'un message de canal aftertouv MIDI. Exemples : fillfo_freqchanaft=10 fillfo_freqchanaft=-40 |
décimale | 0 hertz | -200 to 200 |
fillfo_freqpolyaft | Changement de fréquence du filtre LFO, à la réception d'un message polyphonie aftertouv MIDI. Exemples : fillfo_freqpolyaft=10 fillfo_freqpolyaft=-4 |
décimale | 0 hertz | -200 to 200 |
Amplification
Opcode | Description | Type | Default | Range |
---|---|---|---|---|
volume | Le volume de la région, en decibels. Exemples: volume=-24 volume=0 volume=3.5 |
décimale | 0.0 dB | -144 à 6 |
pan | Position stéréophonique de la région. Si un sample mono est utilisé, pan situe le sample dans l'espace stéréo. Quand un sample stéréo est utilisé, la valeur de pan relativise l'amplitude d'un canal par rapport à l'autre. La valeur 0 est le centre, négatif situe à gauche, positif situe à droite. Exemples : pan=-30.5 pan=0 pan=43 |
décimale | 0.0 % | -100 à 100 |
width | N'agit que sur les sample stéréo, width définit la quantité de mélange des canaux a appliquer pour jouer le sample. La valeur 0 effectue un jeu d'échantillons stéréo comme pour agir en mono (en ajoutant les deux canaux et compensant la variation de volume qui en résulte). Une valeur de 100 jouera l'échantillon stéréo d'origine. Toute valeur intermédiare mélangera les canaux gauche et droit en partie entre eux (suivant la valeur), créant une image spatiale stéréo plus étroite. Une valeur négative intervertit les canaux. Exemples: width=100 // stereo width=0 // play this stereo sample as mono width=50 // mix 50% of one channel with the other |
décimale | 0.0 % | -100 à 100 |
position | N'agit que sur les samples stéréo, position définit la position dans le champ stéréo d'un signal stéréo, après un mélange des canaux tel que défini l'opcode width. La valeur 0 place au centre, les valeurs négatives déplace le panoramique vers la gauche, positif vers la droite. Exemples : // mixer les deux canaux et placer le résultat à gauche width=0 position=-100 // faire un image stéréo médiane et la placer légérement à droite width=50 position=30 |
décimale | 0.0 % | -100 à 100 |
amp_keytrack | Tracking de l'amplifacation du clavier (change l'amplitude par touche) Exemples : amp_keytrack=-1.4 amp_keytrack=3 |
décimale | 0 dB | -96 à 12 dB |
amp_keycenter | Touche centrale pour le tracking de l'amplification de clavier. Sans cette touche, le tracking n'a aucun effet. Exemples: amp_keycenter=60 amp_keycenter=48 |
entier | 60 | 0 à 127 |
amp_veltrack | Tracking de la vitesse de l'amplification, représente de combien l'amplitude varie suivant la vitesse de la note reçue. Les changements de volume avec la vitesse d'entrée ont une forme concave en fonction de l'expression suivante: Amplitude(dB) = 20 log (127² / Velocity²) Les opcodes amp_velcurve_N permettent la substitution de la courbe de vélocité par défaut. Exemples : amp_veltrack=0 amp_veltrack=100 |
décimale | 100 % | -100 à 100 |
amp_velcurve_1 amp_velcurve_127 |
Courbe de vélocité de l'amplification définie par l'utilisateur. Cette gamme d'opcode permet de définir une courbe particulière pour la vitesse de l'amplification. La valeur de l'opcode indique l'amplitude normalisée (0 à 1) à la vitesse spécifiée. Le lecteur va interpoler lineairement entre opcodes spécifiques pour ceux non précisés: amp_velcurve_1=0.2 amp_velcurve_3=0.3 // amp_velcurve_2 est calculé à 0.25 Si amp_velcurve_127 n'est pas spécifié, les lecteur lui assignera la valeur 1. Exemples : // linéaire, gamme dynamiquement compressée // l'amplitude change de 0.5 à 1 amp_velcurve_1=0.5 |
décimale | standard curve (voir amp_veltrack) | 0 à 1 |
amp_random | Volume aléatoire pour la région, en décibels Exemples: amp_random=10 amp_random=3 |
décimale | 0 | 0 à 24 dB |
rt_decay | Valeur de la chute de volume lorsque la région joue dans la phase de déclenchement du release, en décibels par seconde à partir du message note-off. Exemples: rt_decay=6.5 |
décimale | 0 dB | 0 à 200 dB |
output | Le nombre de sortie stéréo pour cette région. Si le lecteur ne dispose pas de sorties multiples, cet opcode est ignoré. Exemples: output=0 output=4 |
entier | 0 | 0 à 1024 |
gain_ccN | Gain appliqué au contrôle MIDI N. Exemples: gain_cc1=12 |
décimale | 0 dB | -144 to 48 dB |
xfin_lokey xfin_hikey |
Contrôle du fade-in. xfin_lokey et xfin_hikey définissent la zone du clavier fade-in pour la région. Le volume de la région sera nulle pour les clés <= xfin_lokey et maximales (tel que défini par l'opcode volume) pour les touches >= xfin_hikey. Exemples: xfin_lokey=c3 xfin_hikey=c4 |
entier | xfin_lokey=0 xfin_hikey=0 |
0 to 127 C-1 to G9 |
xfout_lokey xfout_hikey |
Contrôle de fade-out. xfout_lokey et xfout_hikey définissent la zone du clavier fade-out pour la région. Le volume de la région sera maximale (tel que défini par l'opcode volume) pour les clés <= xfout_lokey, et zéro pour les touches >= xfout_hikey. Exemples: xfout_lokey=c5 xfout_hikey=c6 |
entier | xfout_lokey=0 xfout_hikey=0 |
0 to 127 C-1 to G9 |
xf_keycurve | Courbe de fondu enchaîné du clavier pour la région. Les valeurs peuvent être: gain : fondu en gain linéaire. Ce réglage est idéal pour un fondu enchaîné d'éléments peu différents. Le fondu en gain linéaire garde l'amplitude constante pendant le fondu enchaîné, empêchant le clipping. power : fondu avec égalité de puissance RMS. Ce paramètre fonctionne mieux pour mélanger des éléments très différent, parce qu'un niveau de puissance constant est maintenu pendant la durée du fondu enchaîné. |
texte | power | gain, power |
xfin_lovel xfin_hivel |
Contrôle du fade-in. xfin_lovel and xfin_hivel définissent lintervalle de la vitesse du fade-in pour la région. Le volume de la région est égale à zéro pour des vitesses inférieures ou égales à xfin_lovel et maximales (telle que définie par le opcode en volume) pour des vitesses supérieures ou égales à xfin_hivel. Exemples: xfin_lovel=0 xfin_hivel=127 |
entier | xfin_lovel=0 xfin_hivel=0 |
0 to 127 |
xfout_lovel xfout_hivel |
Contrôle du fade-out. xfout_lokey and xfout_hikey définissent lintervalle de la vitesse du fade-in pour la région. Le volume de la région sera maximale (tel que défini par l'opcode volume) pour des vitesses inférieures ou égales à xfout_lovel, et zéro pour des vitesses supérieures ou égales à xfout_hivel. Exemples: xfout_lovel=0 xfout_hivel=127 |
entier | xfout_lokey=127 xfout_hikey=127 |
0 to 127 |
xf_velcurve | Courbe de fondu enchaîné de la vitesse pour la région. Les valeurs peuvent être: gain : fondu en gain linéaire. Ce réglage est idéal pour le fondu enchaîné d'élément peu différents. Le fondu en gain linéaire garde l'amplitude constante pendant le fondu enchaîné, empêchant le clipping. power : fondu avec égalité de puissance RMS. Ce paramètre fonctionne mieux pour mélanger des éléments très différent, parce qu'un niveau de puissance constant est maintenu durant le fondu enchaîné. |
texte | power | gain, power |
xfin_loccN xfin_hiccN |
Contrôle du fade-in. xfin_loccN et xfin_hiccN définissent la plage de valeurs dans les contrôleurs MIDI N qui vont effectuer un fade-in de la région. Le volume de la région sera de zéro pour les valeurs du contrôleur MIDI N inférieur ou égal à xfin_loccN, et maximum (tel que défini par l'opcode volume) pour des valeurs supérieures ou égales à xfin_hiccN. Exemples: xfin_locc1=64 xfin_hicc1=127 |
entier | 0 | 0 à 127 |
xfout_loccN xfout_hiccN |
Contrôle du fade-in. xfout_loccN et xfout_hiccN définissent la plage de valeurs dans les contrôleurs MIDI N qui vont effectuer un fade-in de la région. Le volume de la région sera maximale (tel que défini par l'opcode de volume) pour des valeurs du contrôleur MIDI N inférieur ou égal à xfout_loccN, et zéro pour les valeurs supérieures ou égales à xfout_hiccN. Exemples: xfout_locc1=64 xfout_hicc1=127 |
entier | 0 | 0 à 127 |
xf_cccurve | courbe de fondu enchaîné des contrôleurs MIDI pour la région. Les valeurs peuvent être: gain : fondu en gain linéaire. Ce réglage est idéal pour un fondu enchaîné d'éléments peu différents. Le fondu en gain linéaire garde l'amplitude constante pendant le fondu enchaîné, empêchant clipping. power : fondu avec égalité de puissance RMS. Ce paramètre fonctionne mieux pour mélanger des éléments très différents, parce que le niveau de puissance est maintenu constant pendant le fondu enchaîné. |
texte | power | gain, power |
Amplification EG
Opcode | Description | Type | Default | Range |
---|---|---|---|---|
ampeg_delay | Retard de l'amplification EG. C'est le temps écoulé depuis note-on sur le début de la phase d'attaque. Exemples: ampeg_delay=1.5 ampeg_delay=0 |
décimale | 0 sec | 0 à 100 |
ampeg_start | Niveau de départ de l'amplification EG. Exemples: ampeg_start=20 ampeg_start=100 |
décimale | 0 % | 0 à 100 % |
ampeg_attack | Durée d'attack de l'amplification EG. Exemples: ampeg_attack=1.2 ampeg_attack=0.1 |
décimale | 0 sec | 0 à 100 |
ampeg_hold | Durée de maintien de l'amplification EG. Exemples: ampeg_hold=1.5 ampeg_hold=0.1 |
décimale | 0 sec | 0 à 100 |
ampeg_decay | Durée de décroissance de l'amplificationEG. Exemples: ampeg_decay=1.5 ampeg_decay=3 |
décimale | 0 sec | 0 à 100 |
ampeg_sustain | Niveau de maitien de l'amplification EG Exemples: ampeg_sustain=40.34 ampeg_sustain=10 |
décimale | 0 % | 0 à 100 % |
ampeg_release | Temps de release (après le relachement de la note (note-off)) Exemples: ampeg_release=1.34 ampeg_release=2 |
décimale | 0 sec | 0 à 100 |
ampeg_vel2delay | Effet de vélocité sur la durée de retard de l'amplification EG. Exemples: ampeg_vel2delay=1.2 ampeg_vel2delay=0.1 Le temps de retard sera calculé comme suit : delay time = ampeg_delay+ampeg_vel2delay*velocity/127 |
décimale | 0 sec | -100 à 100 |
ampeg_vel2attack | Effet de vélocité sur la durée de l'attack de l'amplification EG. Exemples: ampeg_vel2attack=1.2 ampeg_vel2attack=0.1 Le temps de l'attack sera calculé comme suit : attack time = ampeg_attack+ampeg_vel2attack*velocity/127 |
décimale | 0 sec | -100 à 100 |
ampeg_vel2hold | Effet de vélocité sur la durée de maintien de l'amplification EG. Exemples: ampeg_vel2hold=1.2 ampeg_vel2hold=0.1 Le temps de maintien sera calculé comme suit : hold time = ampeg_hold+ampeg_vel2hold*velocity/127 |
décimale | 0 sec | -100 à 100 |
ampeg_vel2decay | Effet de vélocité sur la durée de décroissance de l'amplification EG. Exemples: ampeg_vel2decay=1.2 ampeg_vel2decay=0.1 Le temps de décroissance sera calculé comme suit : decay time = ampeg_decay+ampeg_vel2decay*velocity/127 |
décimale | 0 sec | -100 à 100 |
ampeg_vel2sustain | Effet de vélocité sur le niveau de maintien de l'amplification EG. Exemples: ampeg_vel2sustain=30 ampeg_vel2sustain=-30 Le niveau de maintien sera calculé comme suit : sustain level= ampeg_sustain+ampeg_vel2sustain Le résultat doit être compris entre 0 et 100 % |
décimale | 0 % | 0 à 100 % |
ampeg_vel2release | Effet de vélocité sur la durée de release de l'amplification EG. Exemples: ampeg_vel2release=1.2 ampeg_vel2release=0.1 Le temps de release sera calculé comme suit : release time = ampeg_release+ampeg_vel2release*velocity/127 |
décimale | 0 sec | -100 à 100 |
ampeg_delayccN | Temps de retard de l'amplification EG ajoutée au contrôle MIDI N. Exemples: ampeg_delaycc20=1.5 ampeg_delaycc1=0 |
décimale | 0 sec | -100 à 100 |
ampeg_startccN | Niveau de départ de l'amplification EG ajoutée au contrôle MIDI N. Exemples: ampeg_startcc20=20 ampeg_startcc1=100 |
décimale | 0 % | -100 à 100 % |
ampeg_attackccN | Durée de l'attack de l'amplification EG ajoutée au contrôle MIDI N. Exemples: ampeg_attackcc20=1.2 ampeg_attackcc1=0.1 |
décimale | 0 sec | -100 à 100 |
ampeg_holdccN | Durée de maintien de l'amplification EG ajoutée au contrôle MIDI N. Exemples: ampeg_holdcc20=1.5 ampeg_holdcc1=0.1 |
décimale | 0 sec | -100 à 100 |
ampeg_decayccN | Durée de décroissance de l'amplification EG ajoutée au contrôle MIDI N. Exemples: ampeg_decaycc20=1.5 ampeg_decaycc1=3 |
décimale | 0 sec | -100 à 100 |
ampeg_sustainccN | Niveau de maintien de l'amplification EG ajoutée au contrôle MIDI N. Exemples: ampeg_sustaincc20=40.34 ampeg_sustaincc1=10 |
décimale | 0 % | -100 à 100 % |
ampeg_releaseccN | Durée de release de l'amplification EG ajoutée au contrôle MIDI N. Exemples: ampeg_releasecc20=1.34 ampeg_releasecc1=2 |
décimale | 0 sec | -100 à 100 |
Amplification LFO
Opcode | Description | Type | Default | Range |
---|---|---|---|---|
amplfo_delay | Temps avant le départ de l'oscillateur de l'amplification LFO. Exemples: amplfo_delay=1 amplfo_delay=0.4 |
décimale | 0 sec | 0 à 100 |
amplfo_fade | Durée de l'effet fade-in de l'amplification LFO Exemples: amplfo_fade=1 amplfo_fade=0.4 |
décimale | 0 sec | 0 à 100 |
amplfo_freq | Fréquence de l'amplification LFO. Exemples: amplfo_freq=0.4 amplfo_freq=1.3 |
décimale | 0 Hertz | 0 à 20 Hertz |
amplfo_depth | Profondeur de l'amplification LFO. Exemples: amplfo_depth=1 amplfo_depth=4 |
décimale | 0 dB | -10 à 10 dB |
amplfo_depthccN | Profondeur de l'amplification LFO à la réception d'un message d'un controleur MIDI N. Exemples: amplfo_depthcc1=100 amplfo_depthcc32=400 |
décimale | 0 dB | -10 à 10 dB |
amplfo_depthchanaft | Profondeur de l'amplification LFO à la réception d'un message aftertouch d'un canal MIDI. Exemples: amplfo_depthchanaft=100 amplfo_depthchanaft=400 |
entier | 0 cents | -1200 à 1200 |
amplfo_depthpolyaft | Profondeur de l'amplification LFO à la réception d'un message polyphonique aftertouch MIDI. Exemples: amplfo_depthpolyaft=100 amplfo_depthpolyaft=400 |
entier | 0 cents | -1200 à 1200 |
amplfo_freqccN | Changement de fréquence de l'amplification LFO à la réception d'un message de controleur MIDI N. Exemples: amplfo_freqcc1=5 amplfo_freqcc1=-12 |
décimale | 0 Hertz | -200 à 200 |
amplfo_freqchanaft | Changement de fréquence de l'amplification LFO à la réception d'un message aftertouch d'un canal MIDI. Exemples: amplfo_freqchanaft=10 amplfo_freqchanaft=-40 |
décimale | 0 Hertz | -200 à 200 |
amplfo_freqpolyaft | Changement de fréquence de l'amplification LFO à la réception d'un message polyphonique aftertouch MIDI. Exemples : amplfo_freqpolyaft=10 amplfo_freqpolyaft=-4 |
décimale | 0 Hertz | -200 à 200 |
Égaliseur
Opcode | Description | Type | Default | Range |
---|---|---|---|---|
eq1_freq eq2_freq eq3_freq |
Bondes de fréquence de l'égaliseur. Exemples : eq1_freq=80 eq2_freq=1000 eq3_freq=4500 |
décimale | eq1_freq=50 eq2_freq=500 eq3_freq=5000 |
0 à 30000 Hz |
eq1_freqccN eq2_freqccN eq3_freqccN |
Changement de la bande de fréquence de l'égaliseur à la réception d'un message de controleur MIDI N. Exemples: eq1_freqcc1=80 |
décimale | 0 | 0 à 30000 Hz |
eq1_vel2freq eq2_vel2freq eq3_vel2freq |
Changement de la bande de fréquence de l'égaliseur avec une vélocity MIDI. Exemples: eq1_vel2freq=1000 |
décimale | 0 Hz | -30000 à 30000 |
eq1_bw eq2_bw eq3_bw |
Largeur de la bande de fréquence de l 'égaliseur, en octaves. Exemples: eq1_bw=1 eq2_bw=0.4 eq3_bw=1.4 |
décimale | 1 octave | 0.001 à 4 octaves |
eq1_bwccN eq2_bwccN eq3_bwccN |
Changement de largeur de bande de l'égaliseur à la réception d'un message de controleur MIDI N. Exemples : eq1_bwcc29=1.3 |
décimale | 0 octave | -4 à 4 octaves |
eq1_gain eq2_gain eq3_gain |
Gain d'une bande de fréquence de l'égaliseur. Exemples : eq1_gain=-3 eq2_gain=6 eq3_gain=-6 |
décimale | 0 db | -96 à 24 dB |
eq1_gainccN eq2_gainccN eq3_gainccN |
Changement de gain d'une bande de fréquence de l'égaliseur à la réception d'un message de controleur MIDI N. Exemples : eq1_gaincc23=-12 |
décimale | 0 db | -96 à 24 dB |
eq1_vel2gain eq2_vel2gain eq3_vel2gain |
Changement de gain d'une bande de fréquence de l'égaliseur avec la velocity MIDI. Exemples : eq1_vel2gain=12 |
décimale | 0 db | -96 à 24 dB |
Effets
Opcode | Description | Type | Default | Range |
---|---|---|---|---|
effect1 | Niveau d'entrée de l'effet 1, en % (réverbération dans SFZ). Exemples : effect1=100 |
décimale | 0 % | 0 à 100 % |
effect2 | Niveau d'entrée de l'effet 2, en % (chorus dans SFZ). Exemples : effect2=100 |
décimale | 0 % | 0 à 100 % |