Étape 5: Traitement et OSC messages
Le traitement est un langage de programmation open source gratuit qui est conçu pour être facile à utiliser et est idéal pour les débutants. Il est basé sur Java, donc si vous êtes familier avec cela, vous verrez certains des similitudes.
Téléchargez-le ici et l’installer avant que nous commencions.
Maintenant, il faut analyser les données (messages OSC) reçues par l’intermédiaire de BrainWaveOSC.
Commencez par ouvrir jusqu'à la transformation et la création d’une nouvelle esquisse.
Importer la bibliothèque de la CVMO
À partir d’un croquis vierge, vous aurez envie d’importer la bibliothèque de la CVMO. Vous pouvez le faire en tapant :
Import oscP5.* ;
ou
Allez dans Esquisse -> Importer bibliothèque -> oscP5.
Si vous ne trouvez pas oscP5, vous devrez peut-être ajouter tout d’abord en allant à Esquisse -> Import Bibliothèque -> Ajouter une bibliothèque... et recherchez oscP5. Une fois cela fait, vous aurez envie de créer un objet vide pour elle sur la ligne suivante en tapant :
OscP5 oscp5 ;
Créez votre configuration et dessinez des fonctions
Celui-ci est facile. Il suffit de taper ce qui suit :
void setup() {}
}
{} void draw()
}
Vous venez de créer le squelette.
Maintenant que vous avez votre squelette, nous allons remplir dedans et commencer à lire les messages de la CVMO diffusés par BrainWaveOSC. Assurez-vous que BrainWaveOSC est en cours d’exécution et le casque est connecté. Vous pouvez dire par la couleur du panneau gauche. Si elle est verte, alors vous êtes bon.
Trouver votre port d’OSC
Dans BrainWaveOSC, recherchez votre port d’OSC. Dans le coin supérieur gauche, vous devriez voir quelque chose comme :
OSC - 127.0.0.1:7771
Le 127.0.0.1 est l’adresse ip de votre localhost et 7771 est votre numéro de port. Vous devrez enregistrer ce numéro de port pour plus tard.
Mise en place de traitement pour recevoir des messages de la CVMO
Maintenant, vous aurez envie d’ajouter cette ligne à l’intérieur de votre fonction setup() entre accolades. Se référer aux images comme référence.
Votre fonction setup() devrait ressembler à ceci :
void setup() {}
oscp5 = new OscP5 (this, 7771) ;
}
Formidable ! Vous avez dit juste l’application pour commencer à écouter sur le port 7771 pour les messages entrants d’OSC. Puisque c’est en fonction de la configuration, ça va seulement fonctionner une fois au début.
Réception des messages de la CVMO
Ensuite, nous allons créer une fonction pour recevoir les messages de la CVMO. Setup() s’exécute uniquement une fois et draw() fonctionne tout le temps, la fonction, que nous allons créer ne s’exécuter que lorsqu’un message de la CVMO est reçu.
Créez une fonction qui ressemble à ceci :
void oscEvent (OscMessage lemessage) {}
Imprimer l’adresse et la typetag du message à la console
println ("OSC Message reçu ! Le modèle d’adresse est "+ theMessage.addrPattern() +". Le typetag est: "+ theMessage.typetag()) ;
}
OK nous allons décomposer.
Sub oscEvent(OscMessage theMessage) dit que cette fonction est appelée oscEvent, et il prend un objet de OscMessage comme un paramètre appelé dumessage. Ignorer le vide pour l’instant, cela signifie que la fonction n’est pas supposée retourner une valeur.
La deuxième ligne est println, qui est court pour imprimer ligne. Il écrit les messages dans la zone noire au-dessous de votre éditeur de texte lorsque vous exécutez l’application (la console). Le contenu de println dis-le à imprimer « OSC Message reçu! » et utilise deux méthodes de OscMessage :
- Modèle d’adresse - c’est comme le sujet d’un email. C’est le nom du message
- Typetag - cela vous indique le contenu du message
- Par exemple, un typetag d’iii signifie qu’il y a 3 nombres entiers à l’intérieur du message
Exécutez l’application
- Par exemple, un typetag d’iii signifie qu’il y a 3 nombres entiers à l’intérieur du message