Accessing the Rate amount through the AP!, etc

Learn about building and using Max for Live devices.
LOFA
Posts: 3365
Joined: Mon Jan 10, 2005 7:10 pm

Accessing the Rate amount through the AP!, etc

Post by LOFA » Sun Feb 21, 2010 4:31 am

What methods are there for changing the global rate / bpm amount for the set? I have not located this within the live.api.explorer. Is there another method I could use for making fine changes within scaled ranges? Preferably through a non-midi method? If there was a macro I could assign to this it would be easy, but there has got to be a similar method. I could construct something if I knew how to communicate with it.

Thanks!

zalo
Posts: 999
Joined: Sat Jun 27, 2009 9:10 pm

Re: Accessing the Rate amount through the AP!, etc

Post by zalo » Sun Feb 21, 2010 6:33 am

set and watch

<pre><code>
----------begin_max5_patcher----------
570.3oc0WtsaiBCDF9Z3ovxWmMBah4PuqOGUUUPvMwUAaD3zMcq5695CPUSa
J3.onza.4Ay3+4K+L14UeOXt3.sABtAbGvy6UeOOSHc.u1wdvxrCq2k0XlFj
S+qH+I3B6ijzCRSXIHGrqK5iBtrg8Op9IH7xf1v78kL9NpzjHTaPVg48U47O
nt2uJStdKiu4gZ5ZoUbXTfJOfjD80P7RxB.VEAb+GVRdVoYIg2VyxdWLpUUr
W1sr31n1PxWpn17Cyy3afK.PH3d8Ldy2WeYgiToj1zjsg9ErTUKpn0xW.RZY
k3b3C9q7IYX9fB0oCjhLCRFAfPeGfFGXTIOmVOQiQzvENNHReizN3R5LXbo1
XXLHiiAm9SlcrmoKE4Mz5mOOBcBqA1AqQTr9Vb5kmPi+6l9PipT1NQiS7vXw
5XHjQSkvdoxEmLhrBcyFvFgT.zb5gFpbpMdCbv9Pr8WBGMntF6rfB6oxaKYx
usFKU0zJJu.nLFm+9Nm.RoCxnUVRgPWMlida49jV9SqgKYXeSn4Vzpqcl7Sz
QYUO3Ix7oT7UW+je1shBGjHn.x7tUjI+pBj+4+AfQh53GiqFw950cor8.6.z
6prf1HY7LISv+vbvGMmsrhBp4wcbqjUTITcBak.1ZHPH6A8QmZTj0ynNICoc
z27Ctq0g5XBffApCzQyYv5XhJRui7fRJddkjCJJYVUThCJBOqJB6fhhlUEsx
AEENqJJzAEQNulFS0Y6hjRmUHk5HjFqhTCdy++.vhRRm
-----------end_max5_patcher-----------
</code></pre>

LOFA
Posts: 3365
Joined: Mon Jan 10, 2005 7:10 pm

Re: Accessing the Rate amount through the AP!, etc

Post by LOFA » Sun Feb 21, 2010 6:54 am

Thank you! So much!!!

I saw that tap_tempo was listed in the API_explorer but I did not assume that tempo would work.

How did you know that this would work?

Is there a list somewhere of the available parameters?

Is there a method to inquire the live.object for what items it can control and their related message?

LOFA
Posts: 3365
Joined: Mon Jan 10, 2005 7:10 pm

Re: Accessing the Rate amount through the AP!, etc

Post by LOFA » Sun Feb 21, 2010 6:56 am

I bet there is an abstraction somewhere that describes this where does someone in the know go to find the available properties than can be changed and their related naming structure for the live.path object?

zalo
Posts: 999
Joined: Sat Jun 27, 2009 9:10 pm

Re: Accessing the Rate amount through the AP!, etc

Post by zalo » Sun Feb 21, 2010 7:07 am

the live object model is where i learned everything that is the live API

its a very good list of how everything works and what it works with

julienb
Posts: 1843
Joined: Sat Oct 29, 2005 1:15 pm
Location: France
Contact:

Re: Accessing the Rate amount through the AP!, etc

Post by julienb » Sun Feb 21, 2010 7:45 am

Julien Bayle
Art + Teaching/Consulting

Ableton Certified Trainer
Max Certified Trainer


Structure Void / Ableton Certified Training Center

hyaahyaa
Posts: 21
Joined: Thu Oct 22, 2009 2:35 am

Re: Accessing the Rate amount through the AP!, etc

Post by hyaahyaa » Sun Feb 21, 2010 7:46 am

http://www.cycling74.com/docs/max5/refp ... model.html is the relevant documentation. It is also available on your hard drive under Help > Max For Live <click> Live Object Model. It is not, however, strictly complete, especially as regards the control surfaces section, and there are several known errors, such as the fact that "get current_song_time" does not return milliseconds as is claimed in the doc page. Nonetheless it is extremely useful.

Just as a question, how did you get anywhere with the Live API without reference to this doc page? Did you you just use the Live API explorer patch? You should know that while that patch is extremely good (and big props to matcham for making it) it isn't comprehensive, and there are some properties and function calls which it doesn't list, for whatever reason.

LOFA
Posts: 3365
Joined: Mon Jan 10, 2005 7:10 pm

Re: Accessing the Rate amount through the AP!, etc

Post by LOFA » Sun Feb 21, 2010 7:50 am

Ah hah! There it is! Many thanks. This reference file is far more valuable at this point for me than the diagram. I completely forgot about it.

LOFA
Posts: 3365
Joined: Mon Jan 10, 2005 7:10 pm

Re: Accessing the Rate amount through the AP!, etc

Post by LOFA » Sun Feb 21, 2010 7:57 am

hyaahyaa wrote:http://www.cycling74.com/docs/max5/refp ... model.html is the relevant documentation. It is also available on your hard drive under Help > Max For Live <click> Live Object Model. It is not, however, strictly complete, especially as regards the control surfaces section, and there are several known errors, such as the fact that "get current_song_time" does not return milliseconds as is claimed in the doc page. Nonetheless it is extremely useful.

Just as a question, how did you get anywhere with the Live API without reference to this doc page? Did you you just use the Live API explorer patch? You should know that while that patch is extremely good (and big props to matcham for making it) it isn't comprehensive, and there are some properties and function calls which it doesn't list, for whatever reason.
I appreciate this response. I have not looked at this doc since I learned enough of the api to build what I needed. I forgot how extensive the reference was other than the visual layout. I also did not realize how limited the explorer was.

I have gotten by through vigilant dissection of abstractions, posted patches, various reference files, etc. Whatever my mind could eat. It seems that the LOM will be my haunt again for a bit now though. The api explorer made my life easier (completed what I needed) and so I forgot where else I could find this necessary information.

zalo
Posts: 999
Joined: Sat Jun 27, 2009 9:10 pm

Re: Accessing the Rate amount through the AP!, etc

Post by zalo » Sun Feb 21, 2010 8:15 am

julienb wrote:http://forum.ableton.com/viewtopic.php?f=35&t=126885
it seems to be more reliable.
i have never had a problem with my tempo watch api code, it also seems a lot simpler than the one you originally posted in that thread

and there doesnt seem to be the ability to set the tempo either

julienb
Posts: 1843
Joined: Sat Oct 29, 2005 1:15 pm
Location: France
Contact:

Re: Accessing the Rate amount through the AP!, etc

Post by julienb » Sun Feb 21, 2010 8:19 am

zalo wrote:
julienb wrote:http://forum.ableton.com/viewtopic.php?f=35&t=126885
it seems to be more reliable.
i have never had a problem with my tempo watch api code, it also seems a lot simpler than the one you originally posted in that thread

and there doesnt seem to be the ability to set the tempo either

andrew adviced about using transport instead of api.
but we can do what we want to and, especially, what we need :lol:
Julien Bayle
Art + Teaching/Consulting

Ableton Certified Trainer
Max Certified Trainer


Structure Void / Ableton Certified Training Center

Gregory Taylor
Posts: 268
Joined: Tue Sep 01, 2009 3:11 pm

Re: Accessing the Rate amount through the AP!, etc

Post by Gregory Taylor » Sun Feb 21, 2010 12:33 pm

I'm sure that my friend Andrew has pointed this out a number of times, but it's worth saying again.

Although you do have access to things like tempo via the Live API, remember that any feedback you get is going to be in the low-priority queue. You're really a LOT better off familiarizing yourself with the Max transport object if you want to do this kind of thing. It's waaaaaay easier for one thing. :-)

LOFA
Posts: 3365
Joined: Mon Jan 10, 2005 7:10 pm

Re: Accessing the Rate amount through the AP!, etc

Post by LOFA » Sun Feb 21, 2010 3:22 pm

Are you suggesting, Gregory, that the global tempo can be changed as well? It seems that I should be able to just change the tempo attribute of a transport object but I haven't been able to make that work yet.

If so, this one bit of information is confusing me:
"When used in conjunction with Max for Live, the transport object is slaved to the Live application's transport and cannot be used to control the Live transport. You can control the Live application's tranport by using the Live API."

zalo
Posts: 999
Joined: Sat Jun 27, 2009 9:10 pm

Re: Accessing the Rate amount through the AP!, etc

Post by zalo » Sun Feb 21, 2010 4:30 pm

Gregory Taylor wrote:I'm sure that my friend Andrew has pointed this out a number of times, but it's worth saying again.

Although you do have access to things like tempo via the Live API, remember that any feedback you get is going to be in the low-priority queue. You're really a LOT better off familiarizing yourself with the Max transport object if you want to do this kind of thing. It's waaaaaay easier for one thing. :-)
excuse me if this is coming off wrong, but i still dont understand why the live API should not be used for tempo watch

what is wrong with the feedback being low priority, tempo watching really never would need to be high priority since the whole point is to be able to look down on the controller and see, "yep, still 120"

also, it doesnt seem any easier to use the metro/transport than it is to use live.observer, maybe its because i got into max with M4L and the first thing i learned was the API, but it just seems so much simpler

if you could please post code of the two side by side in a situation where the API doesnt work this would be very helpful for the learning experience for me

thanks

LOFA
Posts: 3365
Joined: Mon Jan 10, 2005 7:10 pm

Re: Accessing the Rate amount through the AP!, etc

Post by LOFA » Sun Feb 21, 2010 4:49 pm

Thanks again for your help, Zalo.

To answer your question, there are many reasons why having the tempo update quickly is important. This data is valuable for reasons other than viewing the current tempo. It can be used as information to drive A/V, change the speed on a motor etc. Anything that would need to be synced to a live performance for dramaturgical effect- creating the illusion of a shared physical relationship between things.

to come back to my question, I take it that the transport object can be used as a means to receive global transport information, but as the help file says, not change it within m4l. I imagine this might have been a preventative decision to avoid feedback-related errors.

Post Reply