M4L API path troubles (I'm an idiot)


    Aug 20 2013 | 2:34 pm
    OK. This has got to be simple, but I haven't been able to figure it out from the docs.
    I'm trying to create a patch that talks to a rack and deactivate all the devices in the chains I'm not using. (I have some monster racks with a lot of cpu-expensive fx in each chain that I need to switch rapidly between.)
    I can get the program to set values to parameters of objects, so I got that part right. But it fails when these objects are in chains in the rack.
    The parameter I want to set lives in: the first track the second device (a rack) the first chain in the rack the first device
    (My M4L patch is the first track first device.)
    so I send this to live.path in my m4l device: path live_set tracks 0 devices 1 chains 0 devices 0 parameter 0 best I can figure from the LOM doc, but it doesn't work
    in fact, when I run getinfo on various paths to see where I'm messing up I get "no object" when I give: path live_set tracks 0 devices 1 chains 0
    I must be doing something silly. I also don't know what info/files it would be helpful to attach to this post.
    I've been scouring the internet and docs for over a day on this one with no avail, so hand holding would be very appreciated! :)

    • Aug 22 2013 | 6:15 am
      Do you really need M4L to do this ? Can't you use envelope automation ?
    • Aug 22 2013 | 2:44 pm
      go to the parent device path and use 'getchildren'.
      Feed those path Id's into a live.object and send the object a 'getpath'
      This way, rather than guessing what the right path would be, LIVE itself is telling what exists
    • Aug 22 2013 | 3:04 pm
      Thanks guys!
      I was playing with getpath, getchildren and kept finding nothing.
      Turns out I AM an idiot. My (admittedly) old version of Ableton did not support chain paths. So I finally got around to upgrading, now everything works like a charm.
      I apologize for the unnecessary post but really appreciate everyone's help! :)