
Cette application est une expérience visant à ajouter une fonctionnalité qui manque dans ma workstation favorite (DAW, digital audio workstation) : la possibilité de modifier les vélocités en suivant un contrôleur MIDI. Toutes les DAW comportent des fonctions d'édition avancées pour les vélocités, mais pas aussi directes qu'un geste musical exécuté en “live” sur une molette de modulation ou une pédale.
Modifier les vélocités sur une piste MIDI a un effet totalement différent d'un simple mixage plus ou moins fort : la vélocité affecte le son proprement dit, généré depuis la note MIDI. Par exemple, la plupart des kits de batterie comportent plusieurs échantillons (samples) pour chaque note et sélectionnent le sample en fonction de la vélocité. De ce fait, augmenter ou diminuer la vélocité à des moments clés dans la musique donne un résultat beaucoup plus musical qu'un simple changement de volume.
Cela fonctionne évidemment très bien sur un piano aussi ! Tout instrument, qu'il soit virtuel ou physique, piloté depuis une piste MIDI dans la DAW, peut bénéficier d'une “touche musicale” sur les vélocités.
Téléchargements
Nécessite MacOS X 10.12 ou plus. Fonctionne parfaitement sous Ventura (MacOS 13).
- Télécharger l'application : Velociraptor 1.2
- Voici un projet exemple avec une batterie pour Digital Performer (v. 7 ou plus).
Note : Velociraptor peut être utilisé avec d'autres DAW, mais ceci n'a pas été testé, et une DAW peut offrir une solution pour obtenir un résultat similaire. Par exemple, avec Logic Pro, il est possible d'assigner un contrôle MIDI à la valeur “Ratio” dans le Processeur de vélocité, puis enregistrer et éditer avec l'automation les mouvements MIDI. Néanmoins Velociraptor fonctionnera aussi avec Logic et les autres DAW, même si le projet est né sur Digital Performer.
IAC Driver
Inter-Application Driver permet aux applications MIDI de communiquer via MacOS. Il n'est pas activé par défaut. Avant d'utiliser l'application, assurez-vous que l'IAC Driver est actif sur votre Mac. Ouvrez Configuration Audio et MIDI (dans le dossier /Applications/Utilitaires/), affichez la fenêtre du studio MIDI et faites un double-clic sur l'icône IAC Driver. Activez-le en cochant la case “Le périphérique est connecté”.
Routing
L'image suivante devrait clarifier l'opération :

Entrée des notes
Au lieu d'envoyer la piste MIDI originale vers son instrument, réglez sa sortie sur IAC Driver, pour l'envoyer à Velociraptor. Utilisez un canal MIDI dédié, et assurez-vous que le même canal est sélectionné dans Velociraptor avec le menu Listen for notes on MIDI channel. La réception des données MIDI active l'indicateur horizontal en haut, affichant brièvement la vélocité des notes reçues. Les vélocités inférieures à 64 sont vertes, moyennes en jaune, 100 et plus en rouge.

ContrĂ´le
La section suivante de la fenêtre est le réglage du contrôle. Sélectionnez le canal MIDI à écouter pour le contrôle (il peut être le même que celui des notes). Utilisez les cases à cocher pour activer ou désactiver la molette de pitch et la modulation. Notez que n'importe quel Control Change MIDI peut être utilisé à la place de la molette de modulation, ce qui permet d'employer d'autres contrôleurs comme une pédale, un breath-controller, un fader, un raton-laveur 🦝 ou ce qu'il vous plaira. (La pédale de sustain (CC 64) est ignorée, elle est simplement passée en “thru”.)

L'indicateur horizontal montre la dernière valeur de contrôle reçue. La molette de pitch n'est utilisée que sur une résolution de 7 bits (MSB), puisque la vélocité ne permet pas une résolution plus précise, le LSB est ignoré.
Les boutons-radios proposent deux modes :
- Mode offset : les vélocités sont augmentées ou diminuées selon la valeur du contrôle, centré sur la valeur 64 (le centre pour le pitch, la position médiane pour la modulation). Ce mode préserve les variations de vélocité entre les notes de la piste originale, en augmentant ou diminuant les vélocités.
- Mode fixe : les vélocités sont toutes mises à la valeur du contrôle. Ce mode “aplatit” toutes les vélocités et ne conserve pas les valeurs originales.
Sortie MIDI et “piste de retour”
Sélectionnez un canal MIDI pour renvoyer les notes avec les vélocités modifiées (ce canal ne peut pas être le même que celui de l'entrée des notes). L'indicateur affiche brièvement la vélocité de la dernière note jouée, modifiée en fonction du contrôle.

Dans la DAW, créez une piste MIDI avec le même instrument que l'originale. Utilisez IAC Driver pour son entrée MIDI, en sélectionnant le même canal que dans Velociraptor pour Re-send notes on MIDI channel. Assurez-vous de n'écouter que cette “piste de retour” et non l'originale (comment obtenir cela dépend de la DAW, voir l'exemple ci-dessous).
Vous pouvez maintenant jouer la piste originale, utiliser un contrôleur MIDI pour modifier les vélocités à la volée en écoutant la musique, et enregistrer la “piste de retour”.
Vous pouvez également cocher l'option Also re-send received pitch/mod/control pour enregistrer vos mouvements de contrôleur, en utilisant le même canal MIDI que la sortie des notes pour enregistrer le contrôleur sur la même “piste de retour”, ou choisir un autre canal MIDI pour l'enregistrer séparément, ce qui est recommandé pour plus de flexibilité.
Vous pouvez aussi utiliser le contrôle renvoyé depuis la piste MIDI de la DAW comme source de contrôle. De ce fait, si vous enregistrez vos mouvements de contrôleur, vous pouvez les éditer avec les outils habituels de la DAW, puis les rejouer vers Velociraptor pour réenregistrer les vélocités modifiées.
Latence
Utiliser IAC induit inévitablement un peu de latence. Heureusement elle est facile à compenser :
- Choisissez une note MIDI dans la piste originale qui est placée pile sur un début de mesure.
- Cherchez cette même note MIDI dans la “piste de retour”.
- Examinez la position de cette note. Par exemple, si la note originale est à la mesure 1, beat 1, step 0, et que la même note est revenue à la mesure 1, beat 1, step 8, cela signifie que la latence a décalé l'ensemble de la “piste de retour” de 8 steps.
- Connaissant la latence exacte, utilisez la commande appropriée dans la DAW pour recaler les notes dans leur position originale et la faire disparaître.
Changements
1.2 : amélioration du buffer d'entrée MIDI.
1.1 : Velociraptor est maintenant “universel”, l'application s'exécute nativement tant sur un Mac M1 (“Apple silicon”) que sur un Mac Intel.
1.0.1 : correction d'un bug qui bloquait la réception de la pédale de sustain sur la piste de retour. (Merci Wally!)
Enjoy!