Welcome to %s forums

BrainModular Users Forum

Login Register

Global Data OSC

j'ai besoin d'aide sur un patch
Post Reply
grego mondo
Member
Posts: 464
Location: 22110 Rostrenen
Contact:

Global Data OSC

Unread post by grego mondo » 09 Oct 2025, 11:44

Bonjour, salut

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
Attachments
GA Data OSC why.pat
(53.06 KiB) Downloaded 209 times
En attendant cordialement l'apocalypse ... 100% Usine !!
https://lesformesdufond.kaz.bzh/grego-mondo/
PC i7 2.6Ghz - Win11 / RME Fireface UFX
Tubas / Serpent / Music Box
Interfaces Midi / OSC / DMX

BM2F
New member
Posts: 8
Contact:

Unread post by BM2F » 09 Oct 2025, 15:13

Salut,

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 :
Attachments
GA Data OSC corrected.pat
(79.71 KiB) Downloaded 210 times

grego mondo
Member
Posts: 464
Location: 22110 Rostrenen
Contact:

Unread post by grego mondo » 09 Oct 2025, 15:35

Merci

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 ?
En attendant cordialement l'apocalypse ... 100% Usine !!
https://lesformesdufond.kaz.bzh/grego-mondo/
PC i7 2.6Ghz - Win11 / RME Fireface UFX
Tubas / Serpent / Music Box
Interfaces Midi / OSC / DMX

User avatar
oli_lab
Member
Posts: 1261
Location: Brittany, France
Contact:

Unread post by oli_lab » 09 Oct 2025, 19:09

Yo !
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
http://oli-lab.org

Win11 Ryzen9/32GB RAM - RME MADIFACE - SSL alpha link 4-16 - OSC capable interfaces

follow OLI_LAB adventures on Mastodon
@olivar_premier@mastodon.social

grego mondo
Member
Posts: 464
Location: 22110 Rostrenen
Contact:

Unread post by grego mondo » 09 Oct 2025, 19:34

Merci Olivar

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.
Attachments
send to unity.PNG
En attendant cordialement l'apocalypse ... 100% Usine !!
https://lesformesdufond.kaz.bzh/grego-mondo/
PC i7 2.6Ghz - Win11 / RME Fireface UFX
Tubas / Serpent / Music Box
Interfaces Midi / OSC / DMX

User avatar
oli_lab
Member
Posts: 1261
Location: Brittany, France
Contact:

Unread post by oli_lab » 09 Oct 2025, 23:26

pour plus de beauté du geste, tu peux changer l'adresse d'un unique OSC send, dynamiquement en fonction de l'index de l'array qui a changé d'état. à condition qu'il n'y a pas de changements simultanés.
http://oli-lab.org

Win11 Ryzen9/32GB RAM - RME MADIFACE - SSL alpha link 4-16 - OSC capable interfaces

follow OLI_LAB adventures on Mastodon
@olivar_premier@mastodon.social

grego mondo
Member
Posts: 464
Location: 22110 Rostrenen
Contact:

Unread post by grego mondo » 10 Oct 2025, 01:08

J'y ai pensé,
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
En attendant cordialement l'apocalypse ... 100% Usine !!
https://lesformesdufond.kaz.bzh/grego-mondo/
PC i7 2.6Ghz - Win11 / RME Fireface UFX
Tubas / Serpent / Music Box
Interfaces Midi / OSC / DMX

User avatar
oli_lab
Member
Posts: 1261
Location: Brittany, France
Contact:

Unread post by oli_lab » 10 Oct 2025, 10:30

jette un oeil à "array unpack" et "array one by one"
http://oli-lab.org

Win11 Ryzen9/32GB RAM - RME MADIFACE - SSL alpha link 4-16 - OSC capable interfaces

follow OLI_LAB adventures on Mastodon
@olivar_premier@mastodon.social

Post Reply

Who is online

Users browsing this forum: No registered users and 9 guests