metro timing ticks

May 27, 2011 at 12:42pm

metro timing ticks

Hi

Since this is my first post…hello to everybody.

I read the doc but i don’t understand, how to output bangs from “metro” using ticks and how the message “Transport” in metro is used correctly.

I defined a metro with a bang output of 500ms and tried to trigger an other metro object that sends intervals in 480 ticks.

I work with Logic and the time resolution in Logic is 960 ticks per beat. I want to patch a standalone that works with the same resolution in rewire mode.

The Transport in MAX works with a resolution of 480 ticks and i was thinking that this would cause imprecise timing when it comes to groove.

By the way is the MAX global transport included by creating a standalone?

Hope you understand my questions

Greetings
Zuko

#57320
May 27, 2011 at 2:35pm

Hello, Zuko. When you use a tempo-relative timing unit (such as ticks) for metro, rather than the tempo-independent ms, the metro becomes linked to the transport. The transport has to be running for the metro to work. (Sorry if I’m telling you something you already know.) There’s an example below.

I think that the fact that Max uses 480 ticks per quarter note and Logic uses 960 will not cause you any serious timing problems. At a tempo of 120 bpm, 1/960 of a beat (the maximum difference between Max’s timing and Logic’s) is only .52 ms. Even at an extremely slow tempo like 48 bpm (not exactly a common tempo in “groovy” music) the maximum error would be only 1.3 ms. Mind you, I haven’t tested to see if there’s some kind of software incompatibility between Max and Logic, but I’m not aware of any.

– Pasted Max Patch, click to expand. –
#205350
May 27, 2011 at 2:35pm

Hello, Zuko. When you use a tempo-relative timing unit (such as ticks) for metro, rather than the tempo-independent ms, the metro becomes linked to the transport. The transport has to be running for the metro to work. (Sorry if I’m telling you something you already know.) There’s an example below.

I think that the fact that Max uses 480 ticks per quarter note and Logic uses 960 will not cause you any serious timing problems. At a tempo of 120 bpm, 1/960 of a beat (the maximum difference between Max’s timing and Logic’s) is only .52 ms. Even at an extremely slow tempo like 48 bpm (not exactly a common tempo in “groovy” music) the maximum error would be only 1.3 ms. Mind you, I haven’t tested to see if there’s some kind of software incompatibility between Max and Logic, but I’m not aware of any.

– Pasted Max Patch, click to expand. –
#205425
May 27, 2011 at 2:40pm

Quick answer: yes in a standalone you can see the transport. The user needs to be able to double click on the transport object.

I have some questions though, do you want max or logic to be the ReWire host? This will determine a lot of how you program it.

GW

#205351
May 27, 2011 at 2:40pm

Quick answer: yes in a standalone you can see the transport. The user needs to be able to double click on the transport object.

I have some questions though, do you want max or logic to be the ReWire host? This will determine a lot of how you program it.

GW

#205426
May 27, 2011 at 2:56pm

Keep in mind that Logic can run only as ReWire host (master), not client (slave).

#205352
May 27, 2011 at 2:56pm

Keep in mind that Logic can run only as ReWire host (master), not client (slave).

#205428
May 27, 2011 at 5:59pm

Thanks for the quick replies and the example patch.
Really cool that patches can be shared via text.
You are right 1.4 ms at 48 BPM should not cause relevant groove problems. :-D

I know that Logic is only able to be the rewire master and the app, that I’am creating should be the slave.
Thats fine.

My app should listen to the rewire tempo but i would like to have the possibility to run sequences without running the rewire transport.

I must admit that i don’t really understand the concept of the Max built in transport for using it in own patches.
I know it’s a Max patch in the extras folder and I guess the transport object in C Dobrians example refers to it.

But how does it work in a own patch that is build as standalone. Will it be automatically included and will the own standalone be able to work with it on other computers where MAX is not installed?

I wanted to understand how the Global Transport patch in the extras folder works but when i open it in edit mode I am not able to see how it’s patched. Other patches in this folder act the same. Whats going on there?

In the tutorial “Abstractions” it’s explained how to encapsulate and that these abstractions can be saved and used as objects in new patches. Where do i have to place the abstractions that i want to use in my app and how I’m gonna tell in the process of building that i want those to be included?

I can’t find a step by step instruction on “How to build your own app” in the docs. I tried to build one test app but i get an .mfx file.

Greetings
Zuko

ps.: Is there a option to allign a bunch of patch chords at once? :-/

#205353
May 27, 2011 at 5:59pm

Thanks for the quick replies and the example patch.
Really cool that patches can be shared via text.
You are right 1.4 ms at 48 BPM should not cause relevant groove problems. :-D

I know that Logic is only able to be the rewire master and the app, that I’am creating should be the slave.
Thats fine.

My app should listen to the rewire tempo but i would like to have the possibility to run sequences without running the rewire transport.

I must admit that i don’t really understand the concept of the Max built in transport for using it in own patches.
I know it’s a Max patch in the extras folder and I guess the transport object in C Dobrians example refers to it.

But how does it work in a own patch that is build as standalone. Will it be automatically included and will the own standalone be able to work with it on other computers where MAX is not installed?

I wanted to understand how the Global Transport patch in the extras folder works but when i open it in edit mode I am not able to see how it’s patched. Other patches in this folder act the same. Whats going on there?

In the tutorial “Abstractions” it’s explained how to encapsulate and that these abstractions can be saved and used as objects in new patches. Where do i have to place the abstractions that i want to use in my app and how I’m gonna tell in the process of building that i want those to be included?

I can’t find a step by step instruction on “How to build your own app” in the docs. I tried to build one test app but i get an .mfx file.

Greetings
Zuko

ps.: Is there a option to allign a bunch of patch chords at once? :-/

#205430
May 27, 2011 at 7:28pm

You can use [GlobalTransport] in your patch. Double-click will open it.
But it provides just an user interface to start/stop and observe the global transport.
For getting the current transport data you need to poll a [transport] object with [metro].

– Pasted Max Patch, click to expand. –
#205354
May 27, 2011 at 7:28pm

You can use [GlobalTransport] in your patch. Double-click will open it.
But it provides just an user interface to start/stop and observe the global transport.
For getting the current transport data you need to poll a [transport] object with [metro].

– Pasted Max Patch, click to expand. –
#205432
May 28, 2011 at 8:48am

thanks broc

#205355
May 28, 2011 at 8:48am

thanks broc

#205434

You must be logged in to reply to this topic.