Jump to content

MTC Synchronization - Logic not slaving to external MTC (SOLVED)

Go to solution Solved by des99,

Recommended Posts


I'm having trouble getting Logic to slave to an incoming MTC signal. Logic recognizes that MTC is present, and auto-detects its frame rate (29.92) but the transport Bar/Beat display reports a negative number, and sometimes flickers/flashes up/down by a bar or two, but playback never engages and no sound is heard.


System Overview:

Logic Pro Version: 10.7.3

Mac OS Version: Big Sur 11.6.4

MTC Source: I have external MTC flowing into my Macbook Pro on MIDI Port 1.

MTC Signal: I have captured the incoming MTC using MIDI Monitor. Based on my rudimentary understanding of the MTC format, the incoming signal looks okay to me. There are regularly-incrementing timestamps and MTC Quarter Frame messages. (Refer to the attached screenshots for examples.)

Logic - Sync Mode: MTC

Logic - Frame Rate (Auto-Detect enabled): Logic detects the presence of MTC and auto-detects that it is 29.97 format.

Logic Project: I have a simple Logic project with 1 audio track beginning from time 0 and lasting about 5 minutes.



Incoming MTC: 9411574_ScreenShot2022-04-13at3_10_27PM.thumb.png.24545b76da15c338754b255e70d47e96.png

Incoming MTC: 495136732_ScreenShot2022-04-13at3_10_51PM.thumb.png.02f21e74d83180abf0ca5ee6beaf7b99.png

Sync Settings - General: 955078307_ScreenShot2022-04-13at3_27_01PM.thumb.png.d6ab23b829ac9523a41aeb1b0c939cf5.png

Sync Settings - Audio: 751923759_ScreenShot2022-04-13at3_27_20PM.thumb.png.e852243405a59eea617d9b9b522c37df.png

Sync Settings - MIDI: 2115635385_ScreenShot2022-04-13at3_27_24PM.thumb.png.059740dba0a6af1532f3e20eed08aedb.png

Sync Settings - Unitor: 787265809_ScreenShot2022-04-13at3_27_40PM.thumb.png.183a0d09f2ac9d6bd4808399467f2a23.png

Edited by timcolfax
Link to comment
Share on other sites

Tim - you might want to check your image links, as none of them can be displayed here.

It's preferable if you attach the images to the post directly, rather than use other hosting services, then the references stay intact regardless of what happens elsewhere - thanks!

Link to comment
Share on other sites

From an initial look there doesn't seem to be anything glaringly wrong with your sync settings.


What's sending the MTC? Do the start times in the sender match the start times in Logic?

Also, when you said from time 0, do you mean bar 0 1 1 1? Or 1 1 1 1? If the former, Logic can get flaky if you have project start times before the 1 1 1 1.


I'll have a look at Logic's behaviour here a little later to see whether slaving to MTC works for me. It's been a while since I've needed to sync stuff out of the box - from memory, MTC doesn't include transport messages, so I can't remember if you actually have to put Logic into playback mode to start the transport and then run in sync, or whether the receipt of MTC in external sync mode will do that automatically.


Anyway, I'll have a little dig around to refresh my memory and check Logic's behaviour and post back...

Link to comment
Share on other sites

Thanks @des99. In answer to your questions:


  • What's sending the MTC?: The MTC is being read from a single SMPTE-striped track on a multi-track tape machine. The SMPTE was written by a "JLCooper PPS-2 Synchronizer", which is also reading the SMPTE and converting it to MTC.


  • Do the start times in the sender match the start times in Logic?: I'm not sure how to confirm this. How do the incoming MTC messages correspond to "Logic start times"?


  • When you said from time 0, do you mean bar 0 1 1 1? Or 1 1 1 1?: My audio starts at 1 1 1 1. However, when I open my project, the cursor is not visible, and the Bar/Beat reads -8 1. I've re-positioned the cursor to 1 1 1 1 and saved, closed, and re-opened the project. After doing that, the cursor is visible and is positioned at 1 1 1 1. But if I start sending MTC again, the Bar/Beat position gets reset to -8 1, and persists across project close/re-opens. Based on that behavior, it seems like the MTC signal is somehow disrupting Logic's understanding of the Bar/Beat position, but I don't understand how.

Link to comment
Share on other sites

  • Solution
The SMPTE was written by a "JLCooper PPS-2 Synchronizer", which is also reading the SMPTE and converting it to MTC.


Wow, the PPS2 is going back a way. Not much in the way to change settings on that box!


There is/was a software utility you could use to change the SMPTE start time, but checking the manual, it seems the default start time on the PPS2 is 00:00:00:00, and in Logic you have the start time set at 01:00:00:00 (a convention - in your screenshot, "bar position PLAYS AT SMPTE 01:00:00:00"), so basically Logic won't start playback until it has read that code for an hour.


Try resetting the SMPTE start time in Logic to start at midnight 00:00:00:00 and see whether Logic correctly starts playback now.


(You might also possibly need to adjust the frame rate in Logic, the PPS by default does 30 non-drop, if Logic doesn't auto-detect it correctly.)




Link to comment
Share on other sites

Hey, thanks @des99! That combination of changes worked.


Logic is now correctly starting, stopping, and seeking playback in response to the incoming MTC. Logic even respects vari-speed/pitch control changes on the tape machine. Stellar!


Also, kudos on finding the PPS-2 manual entry. That was a deep cut.


I appreciate all your help. Thank you!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...