pylive icon indicating copy to clipboard operation
pylive copied to clipboard

Parameters not showing up

Open sophiaas opened this issue 2 years ago • 7 comments

Hi there,

First off, this library is awesome 🔥

I have it up-and-running with Ableton 11. I'm able to scan the set, etc. But for some reason, when I examine the devices on a track, the parameters list is always empty. I can't get it to show params for any device I try. Any ideas why this would be? Are there restrictions on the kinds of devices / params that can be read?

Any pointers would be greatly appreciated 🙏

sophiaas avatar Oct 07 '23 21:10 sophiaas

hi @sophiaas! small world 🪐 I came here to report the exact same thing.

yeah... this device parameter thing has huge potential for workflow, sound exploration, and A/V synchronization.

TylerMclaughlin avatar Dec 24 '23 07:12 TylerMclaughlin

same here. i was able to get the track and device names but set.tracks[N].devices[M].parameters returns an empty list...

bqiu86 avatar Dec 29 '23 15:12 bqiu86

same here. i was able to get the track and device names but set.tracks[N].devices[M].parameters returns an empty list...

f441c1c

iWebster28's commit f441c1c worked for me. Thanks!

bqiu86 avatar Dec 29 '23 16:12 bqiu86

Thanks for the comments/suggestions, and apologies @sophiaas for the slow response - due to work commitments, I am only able to work on some projects in a somewhat bursty cadence...

I've now merged @iWebster28's fix, and will also do some iteration on this shortly so that parameters can be scanned more efficiently. As @TylerMclaughlin says, there is massive potential in exploring parameter spaces via this kind of interface!

ideoforms avatar Dec 29 '23 20:12 ideoforms

I've just pushed some updates to AbletonOSC and pylive that enable lightning fast scanning of device parameters, with an example script that randomises the parameters of devices within your set - really fun for generative param exploration. If anyone has a change to test it, I'd appreciate it!

You'll need:

  • the latest git commit of AbletonOSC
  • the latest git commit of pylive (not the pypi version)

The example is here. At the moment, it randomises every parameter of every device, which is a bit extreme but useful for testing. I'll perhaps add some command-line flags to let you be more selective...

If it does or doesn't work for you, let me know what system you're on (macOS/Windows and the Live version). Thanks!

ideoforms avatar Dec 31 '23 01:12 ideoforms

This looks like a great lib ! I have tested the device parameters example, it works great with the default scan mode (file), but if we use the network scan mode it returns 0 parameters.

 set = Set(scan=False)
 set.scan(mode="network")

sahbic avatar Mar 18 '25 23:03 sahbic

Thanks @sahbic. You're absolutely right... this refactor disabled scanning device parameters when network mode is used, which was unintentional. The reason it doesn't happen by default is because it typically takes a whole bunch of extra queries to scan parameters, which slows the process down.

If you want to do this, you can replace set.scan(mode="network") with set._scan_network(scan_device_parameters=True). I'll look at adding an additional arg to scan() to expose this.

ideoforms avatar Mar 20 '25 12:03 ideoforms