Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Apr 12 16:58
    jcelerier synchronize #674
  • Apr 12 16:58

    jcelerier on async_protocols

    midi: allow to choose underlyin… (compare)

  • Apr 11 09:49
    avilleret commented #724
  • Apr 11 09:49
    avilleret commented #724
  • Apr 11 09:47
    avilleret commented #722
  • Apr 10 21:15

    avilleret on github-action

    build ossia-max for mac in rele… autoquit test patcher Revert "restore ossia::value st… and 1 more (compare)

  • Apr 10 19:07

    avilleret on master

    Revert "restore ossia::value st… (compare)

  • Apr 10 16:32

    avilleret on github-action

    Try to fix oscquery not working… restore ossia::value string str… add test for https://github.com… and 3 more (compare)

  • Apr 10 16:07
    avilleret commented #724
  • Apr 10 16:06
    avilleret closed #724
  • Apr 10 16:06

    avilleret on master

    fix filtering when domain and v… domain creator returns a domain… (compare)

  • Apr 10 14:43

    avilleret on master

    restore ossia::value string str… add test for https://github.com… (compare)

  • Apr 10 10:54

    jcelerier on master

    Try to fix oscquery not working… (compare)

  • Apr 10 10:12
    avilleret commented #723
  • Apr 10 10:01
    avilleret commented #723
  • Apr 10 10:00
    avilleret commented #723
  • Apr 10 09:56
    jcelerier commented #723
  • Apr 10 09:51
    avilleret commented #723
  • Apr 10 09:45
    avilleret commented #723
  • Apr 10 09:33
    matcham commented #723
Jean-Michaël Celerier
@jcelerier
The Wizard of OSC
@onar3d
@jcelerier Thanks!
Ion Reguera
@ibiltari
Hi
Antoine Villeret
@avilleret
hi @ibiltari
Alex Ramos
@alex-calamar
Hi Antoine! @ibiltari and myself are working on a project using libossia and we have a "small" question... Although we know the python bindings are still quite poor... When we instantiate a remote oscquery device is it supposed to act like a local oscquery where we can read an write values on the parameters? Or does it have any limitations being just a mirror?
Antoine Villeret
@avilleret
hi, it depends on the implementation, basically when you connect to a device it create a mirror of the namespace and you should be able to read and write parameter value
but you might not be able to create new parameter
Ion Reguera
@ibiltari
what do you mean that depends on the implementation?
Antoine Villeret
@avilleret
by default it is not allowed by the device, but you can send a node or parameter creation request and this request might or might not be handled by the device
^
I mean, most of the devices won't allow you to create new parameter from a remote, but some does
Alex Ramos
@alex-calamar
We would not want to create or remove anything on the remote... But just reading and writing and right now we are not able to do so... We got the remote tree and its nodes but we are not able to read or write them... The remote is another libossia oscquery device ;o)
Antoine Villeret
@avilleret
also there is a "Access Mode" attribute on parameter that define if the parameter is read only, write only or both
could you share you code so I can give it a try ?
Alex Ramos
@alex-calamar
Yes, we use always "ossia.AccessMode.Bi" mode
Antoine Villeret
@avilleret
that's fine
to be honest I didn't use the Python API for a while, I'm not sure to even have use it once, but I would like to help :-)
Alex Ramos
@alex-calamar
Well, let me check it again because perhaps we are having troubles with the namespaces... We got the tree with an update() call to the device... But when we try to find a node on the device with a find_node() call we got nothing in return... How are we supposed to access the remote nodes on the mirror? "Finding" them this way? Integrating them in a local structure?
Antoine Villeret
@avilleret
you should be able to retrieve the namespace as soon as you are connected to the device, and if the namespace didn't change, there is no need to check it periodically,
to check for new messages periodically, you should use a GlobalMessageQueue and pop() it, this return the nodes that have been updated since last pop()
hope that is what you are looking for
Alex Ramos
@alex-calamar
Well, just connecting we have no tree if we don't make an update() call... That's a minuit example, is it also valid for a OSCQuery device?
Antoine Villeret
@avilleret
sorry I think I was mixing stuff, when I read 'update()' I thought about a periodically call, but if you are referring to Ossia.OscqueryDevice.update() then you're right, this is the way to go
the example should be valid for Oscquery too I think
Alex Ramos
@alex-calamar
OK, let me try some other ideas and we'll be back to you if we cannot make it work. Thanks in advance.
Antoine Villeret
@avilleret
ok feel free to ask here, there is always someone to answer :-)
Alex Ramos
@alex-calamar
OK, thanks
Ion Reguera
@ibiltari
so if we understand correctly, any parameter change in the remote tree should pop in the globlal queue, correct?
Antoine Villeret
@avilleret
yes correct
Ion Reguera
@ibiltari
i'ts not happening now for us, but we suspect that could be something with the python bindings, that perhaps are outdated. As Alex said we are going to make some more try's and see if we can make it work.
Jean-Michaël Celerier
@jcelerier
Ah yes, the python bindings (on pip) are old. If you build from source it should work though
Ion Reguera
@ibiltari
yes we are building it from source, an other things are working
but we dont get anything from remote osc-query devices
Jean-Michaël Celerier
@jcelerier
Okay, then if youcan share an example of code it would be useful
Ion Reguera
@ibiltari
the project is complex, so we are going to try more, and if we can't make it work we should try to share some code snippets, thank you very much :)
Ion Reguera
@ibiltari
hi again
Ion Reguera
@ibiltari
sorry, forget it, is working now, i just made it work, :D
just one doubt
ossia.OSCQueryDevice("remoteOSCQueryDevice", "ws://127.0.0.1:5678", 9998)
what is the second port here?
Jean-Michaël Celerier
@jcelerier
it's the UDP port your software will open in order to receive feedback OSC messages from the server
Ion Reguera
@ibiltari
i see, so tree information is exchanged via tcp and parameter updates are sent in a "normal" osc udp stream?
i had some misunderstanding here, i thought OSCQuery was encapsulating all the communication in a tcp connection
Jean-Michaël Celerier
@jcelerier

i see, so tree information is exchanged via tcp and parameter updates are sent in a "normal" osc udp stream?

if possible, yes

but !
if you set the "critical" attribute on the parameters, updates for those parameters will go through tcp
and there is a refactor ongoing to allow to choose that globally (and also go through other kinds of sockets) but it isn't finished yet
Jean-Michaël Celerier
@jcelerier
Yep - technically the protocol doesn't mandate it, it's how libossia chooses to do it. But if you want to try I'll try to make a build of the next version which allows to choose that in a more fine grained way