Logiciels > Plugins VST > Cinemix

Dernière mise à jour : 14/09/2016

Développement non terminé, projet non inscrit dans les sommaires du site.

   

Présentation

Ce plugin est mon premier plugin VST, développé avec Delphi (XE4 puis 10.1 Berlin). Il a été développé pour faciliter l'automation d'une console D&R Cinemix qui avait été quelque peu "adaptée" (matériellement parlant) par son ancien propriétaire.

logiciels_plugins_vst_cinemix_main_000

Il permet de piloter la Cinemix en temps réel et de l'automatiser via l'hôte du plugin. Les commandes de pilotage de la cinemix ont du être analysées "à la main" car les tranches mono réagissaient bien avec le logiciel d'origine mais pas les tranches stéréo.

Le propriétaire de la Cinemix et moi-même avons étudié deux possibilités :
- soit réaliser un adaptateur MIDI autonome (à base de microcontrôleur)
- soit développer un plugin VST (tentative bien avancée).

En fin de compte, la seconde solution a été écartée car je n'ai pas réussi à compiler le plugin dans une version MAC ! Cette expérience m'aura tout de même été profitable, puisque je me suis basé sur ce projet pour finaliser mon premier plugin ;-)


Limitations posée par le plugin VST (2.3) avec la Cinemix

Un plugin VST ne dispose par définition que d'un seul port MIDI (1E/1S). Et la console Cinemix en réclame deux, ce qui gâche un peu le plaisir. Plusieurs solutions peuvent être envisagées pour contourner ce problème :

- utiliser deux instances de plugin VST, un pour chaque port MIDI. Facile à faire mais pas très souple à l'utilisation;
- faire appel à des routines MIDI "parallèles" dans le plugin VST pour gérer plus d'un port MIDI à la fois;
- décaler le numéro de canal MIDI des données qui transitent sur le deuxième port pour tout faire tenir dans un seul port. Bien que cette solution impose un convertisseur hard (ou soft) en plus, c'est celle que nous avons adoptée.

Pour info, voici ce que nous avons relevé pour les commandes de la console Cinemix :

Comme on peut le voir, seules les données liées aux faders hauts et bas des 24 premières voies (mono) transitent sur le port MIDI A.

   

Tests

Ce plugin a été testé avec succès (traitements audio ou MIDI) dans Cubase, Live, Reaper et Audacity. Je n'ai testé l'automation que dans Cubase et Reaper. Bien évidement, je ne peux pas garantir que le plugin tourne sous toutes les plateformes existantes, les configurations sont trop diverses et variées !
   
logiciels_plugins_vst_cinemix_live_001a  logiciels_plugins_vst_cinemix_reaper_001a  

Version de Delphi "idéale" ?

Il m'a fallu faire de nombreux essais avec plusieures versions de Delphi (D5, D2010, XE4 et 10.1Berlin) avant d'arriver à ce que je voulais. L'année dernière, quand j'ai démarré le développement de ce plugin, je devais écrire les fonctions désirées dans Delphi XE4 puis recompiler le tout avec Delphi 5. Méthode de "retour en arrière" peu orthodoxe, mais qui me permettait de voir le plugin avec son nom complet dans l'hôte. Si je ne repassais pas par Delphi 5 (ou pour être plus précis par une version anterieure à D2009) les chaînes de caractères n'étaient pas correctement transmises, et les noms des paramètres d'automation n'étaient pas affichés en intégralité, seule la première lettre s'affichait (problème lié aux codage des caractères, anciennement ANSI sur un octet et maintenant Unicode sur deux octets). 

A ce jour, je n'ai plus besoin de repasser par Delphi 5, le plugin que je compile sous Delphi 10.1 Berlin est exploitable comme tel.


Téléchargement

Pour utiliser ce plugin, il suffit de placer le fichier cinemix.dll dans le répertoire des plugins VST de l'application hôte (Cubase ou autre).
Plugin développé dans un cadre pro et non disponible sur ce site.

Historique

11/09/2016
- Première mise à disposition.