The LFO type can only be set via an integer as the error message
states. You can pass your OSC data through a chain of Change()
-> Select() -> TrigFunc() -> function that gets the OSC
stream as an int (e.g. int(wave.get()) or something like that).
--
You received this message because you are subscribed to the Google Groups "pyo-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pyo-discuss...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/pyo-discuss/c64869de-7bb9-4c89-b247-6b4b7ada4ef2n%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/pyo-discuss/9e0b63a0-90ba-6a28-1426-f4260283932f%40gmail.com.
Ok it works well but i had to twist the code a bit since i get an error saying that wave does not have a get() method (maybe because i am running pyo 1.0.1?)anyway the twist is:
oscpar = OscReceive(port=port, address= ["theremin/pitch", "theremin/brightness", "theremin/wave"])
pitch = oscpar["theremin/pitch"]
brightness = oscpar["theremin/brightness"]
wave = oscpar["theremin/wave"]
amp = 1#= oscpar["theremin/amp"]
t = Theremin(freq=pitch, mul=amp, brightness=brightness)
def wave_changed():
t.waveType = int(oscpar.get("theremin/wave"))
tf = TrigFunc(Change(Round(wave)), wave_changed)this technique works but the slider in crtl() of the theremin class does not follow OSC values and is not hided, but i think i can live with it.thank you very much Olivier.
To view this discussion on the web visit https://groups.google.com/d/msgid/pyo-discuss/4ad68c33-fb82-46b8-bc10-06f491858a77n%40googlegroups.com.