This is my first post on this forum. My compliments and thanks to Jesse and everyone who's contributed towards SL!
The musical tradition I come from demands spontaneous, arbitrary tempo changes to the rhythm. At least for now, all I need is a single pre-recorded loop to be running, and respond instantly to tempo changes (so syncing/recording etc. are not relevant). Thanks to Python, I have a means of instantly (i.e, in live performances, realtime) computing the required BPM and sending it via OSC to applications, such as JackBeat. I'd like to do the same with SL. I'm using SL v 1.6.13, compiled on 2.4 GHz Celeron laptop, 1 GB ram, running Xubuntu 9.04.
Firstly, I've noticed that the SL GUI behaves erratically, with regard to tempo. If I load a .wav file, change the stretch/rate parameter with the mouse, typically (initially, at least) there is a corresponding change in tempo. But then I can change the parameter any much I want, and there's no change in tempo - as if the tempo got 'stuck' at some value. After a few minutes, the tempo decides to wake up suddenly align to whatever the current parameter value is! This appears to be a bug to me, please do correct me if I'm wrong.
Secondly, I haven't been able to get a pre-recorded .wav file to change tempo, upon changing the BPM. I've tried various settings of 'Sync To' and the other checkboxes, but to no effect. It's still not clear to me how SL can understand how many 'beats" there are in a recorded .wav file, so I think I might be missing something here. I'd really appreciate it if someone could throw some light on this, and help me use BPM to set the tempo of a loaded loop.
Thirdly, I've been successful in sending OSC messages to SL, changing the 'rate' parameter in realtime. Using OSC, I don't see any of the erratic behavior I see with a mouse and the GUI (see above). Now, if I could send the 'stretch' parameter value through OSC, then that would be a working solution to my requirements. But then, the OSC documentation page describes only the 'rate' parameter change, and not stretch. I did try
Code: Select all
/sl/#/set stretch (value)
Code: Select all
/sl/#/set rate (value)
Any help would be appreciated! Thanks in advance.
Cheers,
Guru