Ceci est un projet écrit avec la version 17 de WinDev.
Il est basé sur l'utilisation directe du SDK Windows, pour limiter au maximum la taille du framework WD.
Seules les DLLs WinDev suivantes (dont on ne peut pas s'affranchir) sont utilisées:
- Machine virtuelle (wd170vm.dll) 2877 Ko
- Fonctions mathématiques (wd170mat.dll) 132 Ko
- Fonctions standard (wd170std.dll) 804 Ko
et bien entendu le runtime MIDIpianoWD.exe (245 Ko), qui fait tourner le p-code contenu dans MIDIpiano.wdl (60 Ko).
soit pour l'ensemble du code WinDev un total de 4118 Ko.
A titre de comparaison j'ai placé dans le répertoire EXE de l'application également
MIDIpiano32.exe (121 Ko), écrit en PowerBASIC et compilé en code natif 32-bit.
MIDIpiano64.exe (132 Ko), écrit en C++ et compilé en code natif 64-bit.
Avec WinDev, le challenge était de pouvoir utiliser directement l'interface MIDI bas niveau, ce qui implique de tout programmer avec l'API bas niveau pour la nécessité des traitements temps réel.
Les 3 exécutables fournis, vous permettent de vérifier la totale similitude de fonctionnement.
Je dois dire qu'avec WinDev, l'absence de véritable code compilé ne m'a pas facilité la tâche, mais au final je suis très satisfait du résultat.
Pour le code proprement dit, il permet de jouer tous les instruments MIDI implantés dans Windows.
Il ne reste plus qu'à connecter un clavier midi USB (il en existe à partir de 50 €), pour transformer n'importe quel ordinateur en synthé de scène (avec des enceintes adaptées).
Avant de poster le projet sur le forum de PC_Soft, j'aimerai m'assurer qu'il fonctionne avec la version 21 de WinDev.
Par avance merci a celui ou celle qui pourra faire l'essai et me dire ce qu'il en est.
Lien de téléchargement
MIDIpianoWD.zip
Note : Pour éviter tout problème d'UAC, vous devez débloquer le ZIP avant de le décompresser !
Partager