ArrayArrayArrayArrayArrayArrayArrayArray BrainModular BrainModular Users Forum 2025-10-10T10:30:00+02:00 https://brainmodular.com/forums/app.php/feed/topic/7399 2025-10-10T10:30:00+02:00 2025-10-10T10:30:00+02:00 https://brainmodular.com/forums/viewtopic.php?t=7399&p=46069#p46069 <![CDATA[Re: Global Data OSC]]> Statistics: Posted by oli_lab — 10 Oct 2025, 10:30


]]>
2025-10-10T01:08:01+02:00 2025-10-10T01:08:01+02:00 https://brainmodular.com/forums/viewtopic.php?t=7399&p=46068#p46068 <![CDATA[Re: Global Data OSC]]> tu imagine bien,

nez en moins j'ai potentiellement 2 index (ou plus) simultanés ...

J'ai un peu exploré les "array différence" et j'aurais sans doute pu faire un patch à 5 (en imaginant cela comme un max de simultanés) voix de polyphonies en entrant le résultat de "difference" comme un array et en allant chercher le resultat en poly voice
mais j'ai buté sur la problématique suivante :
1 est activé et le reste > poly 1
2 est activé > poly 2
1 est relâché > 2 passe en poly 1 (il est donc re renvoyé par la voice 1) ...

à l'usage nous n'utilisons (pour l'instant) que les déclenchements (trigger) des capteurs mais je voulais garder la possibilité d'un ON/OFF, pas juste un trig, un mode qui puisse jouer sur la durée ....

Comme dit le proverbe Centre Breton :
"il faut accepter de devoir chauffer un peu plus si on laisse des portes ouvertes ..."


Bonne nuit

Statistics: Posted by grego mondo — 10 Oct 2025, 01:08


]]>
2025-10-09T23:26:30+02:00 2025-10-09T23:26:30+02:00 https://brainmodular.com/forums/viewtopic.php?t=7399&p=46067#p46067 <![CDATA[Re: Global Data OSC]]> Statistics: Posted by oli_lab — 09 Oct 2025, 23:26


]]>
2025-10-09T19:34:49+02:00 2025-10-09T19:34:49+02:00 https://brainmodular.com/forums/viewtopic.php?t=7399&p=46066#p46066 <![CDATA[Re: Global Data OSC]]>
Je communique avec Touch Designer et Untiy

d'un coté je reçois un array de 90 valeurs qui m'indiquent l'etat de 90 zones (disons capteurs)
et de l'autre je dois envoyer un même message /btn_on et le numéro de la zone qui est passé ON à Unity.

Je nourris un GA avec mes valeurs reçues en OSC,
Je les traites puis j'en renvoies certaines à Unity.
/btn_on/i 1 puis 5 puis 6 puis 9 mettons pour un array reçu 100011001

J'entre donc les valeurs de mon GA dans un sub polyphonique par un Array input (once in poly)
Je récupère la poly value de mon Array IN > 0 to 1 > send d'un OSC send avec un message /btn_on avec la valeur du current voice (oui de 1 à 90 et non 0/89)
et 1 to 0 avec le message /btn_off (même principe)

ça marche sans soucis, je cherche juste d'autres chemins pour la beauté du geste.
send to unity.PNG

Statistics: Posted by grego mondo — 09 Oct 2025, 19:34


]]>
2025-10-09T19:09:34+02:00 2025-10-09T19:09:34+02:00 https://brainmodular.com/forums/viewtopic.php?t=7399&p=46065#p46065 <![CDATA[Re: Global Data OSC]]> Je complète la réponse de Baptiste :
Global array OSC intéressant pour interfacer un appareil OSC avec usine qui envoie l'OSC de maniere incrémental (comme Touch OSC par exemple).
Un ESP8266 (arduino) peut aussi envoyer de l'OSC sous cette forme, mais on peut aussi envoyer des ensembles de données avec une seule et même adresse. Dans ce dernier cas, il vaut mieux utiliser un OSC receive. (ou un osc lister)

si c'est pour communiquer entre plusieurs instances d'Usine, mieux vaut utiliser les global arrays.

Olivar

Statistics: Posted by oli_lab — 09 Oct 2025, 19:09


]]>
2025-10-09T15:35:20+02:00 2025-10-09T15:35:20+02:00 https://brainmodular.com/forums/viewtopic.php?t=7399&p=46064#p46064 <![CDATA[Re: Global Data OSC]]>
J'envoyais bien un Array, c'était mon but.

Je comprend donc que la fonction de ce module Global Data OSC est au contraire de "concater" 90 messages différents en un seul array et de le transformer un Global Array direct et c'est super !!

J'avais compris qu'il transformait direct un array osc en global array.




J'imagine que le send transforme mon Array en 90 messages OSC (ce qui évite le sub patch avec polyphonie de 90 voix)
après mini essais, il semble que non, ce n'est pas si simple

Y a t'il un module qui transforme un Array en 90 messages OSC ?

Statistics: Posted by grego mondo — 09 Oct 2025, 15:35


]]>
2025-10-09T15:13:45+02:00 2025-10-09T15:13:45+02:00 https://brainmodular.com/forums/viewtopic.php?t=7399&p=46063#p46063 <![CDATA[Re: Global Data OSC]]>
La petite erreur ici est dans l'envoi. l'OSC send avait un paquet size de 90 donc tu send un array d'une size de 90 à 1 seule adresse OSC.
Avec le module GA DATA OSC permet une "auto-indexation" du message OSC. Ainsi pour parler à l'index 0 in utilise l'adresse /osc/presence/test/1, /osc/presence/test/2 pour l'index 1 et ainsi de suite.
(note : /osc/presence/test/ est l'adresse OSC entrée dans le module)
Si tu veux set l'ensemble des 90 index, il te faut envoyer 90 messages OSC.

Ci joint un patch avec le correctif et quelques commentaires :
GA Data OSC corrected.pat

Statistics: Posted by BM2F — 09 Oct 2025, 15:13


]]>
2025-10-09T11:44:05+02:00 2025-10-09T11:44:05+02:00 https://brainmodular.com/forums/viewtopic.php?t=7399&p=46062#p46062 <![CDATA[Global Data OSC]]>
Je viens de découvrir le global data osc

Super sur le principe mais je cherche à comprendre pourquoi il m'"espace" mes valeur en nourrissant le GA
j'ai (il me semble) bien commenté mon patch

mais en gros

Global Data OSC recoit bien les 90 (pour l'exemple) valeurs envoyées en osc
mais il nourrit mon global data array
avec 0=0
1=2
2=4
3=6
...

Je peux tricher en créant un global array 2 fois plus grand puis en le compressant pour récupérer les valeurs à leur place
mais j'aimerai comprendre à quel endroit je fais une erreur ....

merci d'avance pour vos réponses
GA Data OSC why.pat

Statistics: Posted by grego mondo — 09 Oct 2025, 11:44


]]>
BrainModular BrainModular Users Forum 2025-10-10T10:30:00+02:00 https://brainmodular.com/forums/app.php/feed/topic/7399 2025-10-10T10:30:00+02:00 2025-10-10T10:30:00+02:00 https://brainmodular.com/forums/viewtopic.php?t=7399&p=46069#p46069 <![CDATA[Re: Global Data OSC]]> Statistics: Posted by oli_lab — 10 Oct 2025, 10:30


]]>
2025-10-10T01:08:01+02:00 2025-10-10T01:08:01+02:00 https://brainmodular.com/forums/viewtopic.php?t=7399&p=46068#p46068 <![CDATA[Re: Global Data OSC]]> tu imagine bien,

nez en moins j'ai potentiellement 2 index (ou plus) simultanés ...

J'ai un peu exploré les "array différence" et j'aurais sans doute pu faire un patch à 5 (en imaginant cela comme un max de simultanés) voix de polyphonies en entrant le résultat de "difference" comme un array et en allant chercher le resultat en poly voice
mais j'ai buté sur la problématique suivante :
1 est activé et le reste > poly 1
2 est activé > poly 2
1 est relâché > 2 passe en poly 1 (il est donc re renvoyé par la voice 1) ...

à l'usage nous n'utilisons (pour l'instant) que les déclenchements (trigger) des capteurs mais je voulais garder la possibilité d'un ON/OFF, pas juste un trig, un mode qui puisse jouer sur la durée ....

Comme dit le proverbe Centre Breton :
"il faut accepter de devoir chauffer un peu plus si on laisse des portes ouvertes ..."


Bonne nuit

Statistics: Posted by grego mondo — 10 Oct 2025, 01:08


]]>
2025-10-09T23:26:30+02:00 2025-10-09T23:26:30+02:00 https://brainmodular.com/forums/viewtopic.php?t=7399&p=46067#p46067 <![CDATA[Re: Global Data OSC]]> Statistics: Posted by oli_lab — 09 Oct 2025, 23:26


]]>
2025-10-09T19:34:49+02:00 2025-10-09T19:34:49+02:00 https://brainmodular.com/forums/viewtopic.php?t=7399&p=46066#p46066 <![CDATA[Re: Global Data OSC]]>
Je communique avec Touch Designer et Untiy

d'un coté je reçois un array de 90 valeurs qui m'indiquent l'etat de 90 zones (disons capteurs)
et de l'autre je dois envoyer un même message /btn_on et le numéro de la zone qui est passé ON à Unity.

Je nourris un GA avec mes valeurs reçues en OSC,
Je les traites puis j'en renvoies certaines à Unity.
/btn_on/i 1 puis 5 puis 6 puis 9 mettons pour un array reçu 100011001

J'entre donc les valeurs de mon GA dans un sub polyphonique par un Array input (once in poly)
Je récupère la poly value de mon Array IN > 0 to 1 > send d'un OSC send avec un message /btn_on avec la valeur du current voice (oui de 1 à 90 et non 0/89)
et 1 to 0 avec le message /btn_off (même principe)

ça marche sans soucis, je cherche juste d'autres chemins pour la beauté du geste.
send to unity.PNG

Statistics: Posted by grego mondo — 09 Oct 2025, 19:34


]]>
2025-10-09T19:09:34+02:00 2025-10-09T19:09:34+02:00 https://brainmodular.com/forums/viewtopic.php?t=7399&p=46065#p46065 <![CDATA[Re: Global Data OSC]]> Je complète la réponse de Baptiste :
Global array OSC intéressant pour interfacer un appareil OSC avec usine qui envoie l'OSC de maniere incrémental (comme Touch OSC par exemple).
Un ESP8266 (arduino) peut aussi envoyer de l'OSC sous cette forme, mais on peut aussi envoyer des ensembles de données avec une seule et même adresse. Dans ce dernier cas, il vaut mieux utiliser un OSC receive. (ou un osc lister)

si c'est pour communiquer entre plusieurs instances d'Usine, mieux vaut utiliser les global arrays.

Olivar

Statistics: Posted by oli_lab — 09 Oct 2025, 19:09


]]>
2025-10-09T15:35:20+02:00 2025-10-09T15:35:20+02:00 https://brainmodular.com/forums/viewtopic.php?t=7399&p=46064#p46064 <![CDATA[Re: Global Data OSC]]>
J'envoyais bien un Array, c'était mon but.

Je comprend donc que la fonction de ce module Global Data OSC est au contraire de "concater" 90 messages différents en un seul array et de le transformer un Global Array direct et c'est super !!

J'avais compris qu'il transformait direct un array osc en global array.




J'imagine que le send transforme mon Array en 90 messages OSC (ce qui évite le sub patch avec polyphonie de 90 voix)
après mini essais, il semble que non, ce n'est pas si simple

Y a t'il un module qui transforme un Array en 90 messages OSC ?

Statistics: Posted by grego mondo — 09 Oct 2025, 15:35


]]>
2025-10-09T15:13:45+02:00 2025-10-09T15:13:45+02:00 https://brainmodular.com/forums/viewtopic.php?t=7399&p=46063#p46063 <![CDATA[Re: Global Data OSC]]>
La petite erreur ici est dans l'envoi. l'OSC send avait un paquet size de 90 donc tu send un array d'une size de 90 à 1 seule adresse OSC.
Avec le module GA DATA OSC permet une "auto-indexation" du message OSC. Ainsi pour parler à l'index 0 in utilise l'adresse /osc/presence/test/1, /osc/presence/test/2 pour l'index 1 et ainsi de suite.
(note : /osc/presence/test/ est l'adresse OSC entrée dans le module)
Si tu veux set l'ensemble des 90 index, il te faut envoyer 90 messages OSC.

Ci joint un patch avec le correctif et quelques commentaires :
GA Data OSC corrected.pat

Statistics: Posted by BM2F — 09 Oct 2025, 15:13


]]>
2025-10-09T11:44:05+02:00 2025-10-09T11:44:05+02:00 https://brainmodular.com/forums/viewtopic.php?t=7399&p=46062#p46062 <![CDATA[Global Data OSC]]>
Je viens de découvrir le global data osc

Super sur le principe mais je cherche à comprendre pourquoi il m'"espace" mes valeur en nourrissant le GA
j'ai (il me semble) bien commenté mon patch

mais en gros

Global Data OSC recoit bien les 90 (pour l'exemple) valeurs envoyées en osc
mais il nourrit mon global data array
avec 0=0
1=2
2=4
3=6
...

Je peux tricher en créant un global array 2 fois plus grand puis en le compressant pour récupérer les valeurs à leur place
mais j'aimerai comprendre à quel endroit je fais une erreur ....

merci d'avance pour vos réponses
GA Data OSC why.pat

Statistics: Posted by grego mondo — 09 Oct 2025, 11:44


]]>