server_2_midi.exe
Documentation

(transformation d'un signal midi en émulation clavier ordinateur)
suite logicielle schwartzpeter

Le programme server_2_midi  reçoit des infos midi via un packet udp envoyé par un client.

Le protocole udp est une façon de transmettre les informations de machine à machine de manière très rapide:
il ne vérifie pas, ni ne contre vérifie, si un signal est arrivé complètement.
Ce protocole est utilisé pour les applications en temps réél.

Ser
ver_2_midi reçoit le message en UDP et génére le signal reçu en midi que l'on branchera avec msDrivers à une sortie midi, fonction des besoins.
Ce signal midi sera récupéré par une autre application pouvant être pilotée en midi ( PD, VVVV, MAX, OPEN-TZT, etc...).





*Configuration :

1. Paramétrer MsDrivers.exe

Il s'agit de paramétrer la sortie sur laquelle le signal midi sera envoyé.
Ici la table des sons windows ( permet d'entendre que tout va bien). Mais ce pourrait être Midi Yoke NT: 1 ou 2.



Midi Yoke est un  port virtuel midi qui splitte le signal reçu sur un port et l'envoi à ses autres ports . Il permet donc de communiquer à diverses  applications le même signal midi. Midi Yoke est un gratuiciel.


2. config_serveur2midi.txt



debug=  permet d'écrire (1) ou pas (0) dans un fichier debug_input_midi.txt les entrées midi reçues ( retarde les processus mais permet de dépister un éventuel problème).

port_to_listen= le port ( socket) que le programme doit écouter. Le client doit envoyer à cette machine sur le même numéro de port !

clk_mouse_wait= le temps d'attente lorsque l'on clicke avec la souris ( en cas de trop grande sensibilité de celle-ci)

my_delay_is= si l'on a besoin de retarder l'envoi de midi, s'exprime en ms. Permet de régler et se caler fonction des machines. Le réglage se fait en éditant ce paramètre. Il peut être effectué aussi depuis le programme.

note_duration : les informations de durée et de delay ne sont pas émises par le client. Il s'agit donc de définir la durée que doit être générée la note en sortie midi.

set_amnesia= doit toujours être en 1, c'est la fonction qui permet au programme de rester éveillé et fonctionnel lorsque vous vous mettez sur le programme tiers.





*Utilisation :




Il n'y a quasimment aucune action de possible sur ce programme, mis à part sa configuration, le fait de pouvoir faire un reset sur la connection.
Assurez vous que vos antivirus et fire wall sont désactivés, ou de type "gentils" ( Avast / Zone Alarm est un très bon couple) sur les différentes machines.

Au lancement du programme, on voit donc les infos suivantes:
-la date de compilation du programme
-le nom du programme
-le temps de durée que sera émise la note midi
-le mode back amnesia actif (1) ou pas (0)
-si le programme ajoute (1) dans le fichier de debug les infos midi reçues ou pas (0) ( ralenti la procédure)

-l'adresse Ip de la machine recevant le programme, le port ( socket) que ce dernier écoute

-en fond noir: le packet udp reçu, plus l'index de rafraichissement ( 0/1) qui indique un changement d'envoi de signal

-une visualisation sommaire du signal
-le packet udp transcrit en info midi

-le delay ( qui est paramétrable à la souris pour calages)

-sur quel port midishare on est branché par msdrivers

-la case pour quitter

-la case de reset de connection, si vous pensez que le programme a besoin qu'on le réinitialise.

VERSION DOS :
s2midi_Dos.exe


Cette version est écrite pour les petites machines et n'offre pas de possibilités d'action.
Son avantage est de peser beaucoup moins lourd en mémoire !
Sa configuration se fait dans le fichier config_s2midi_dos.txt avec les informations suivantes, plus limitées:

port_to_listen=11059
keyboard_wait=100
my_delay=0
islimit=0            //ajout: si 1 , permet de limiter le niveau à la valeur désirée ( ligne suivante)
leveloflimit=126
Contrairement à l'émulateur de clavier dos, pour quitter: taper une touche, impérativement ( celà permet de fermer le port midi)

A noter que les infos reçues viennent du Client_Multiple:
Le dernier élément de tableau du message udp alterne entre [1] et [0] quand le message vient d'un hardware.
Dans le cas d'une émission par click de souris, le Key Off est considéré comme le même message.




.