This is an unrelated question, but where does one find the spec for the MCU protocol?
Hey Andreas,
Here's what my colleagues told me:
The MCU protocol does _not_ include any timecode information. The MCU is purely a passive device, and it has a set of LCDs which we send text to. We send a textual representation of the current timeline's timecode if the user has selected timecode, but it is only loosely synchronized to actual playback; it's driven off of our UI playhead notification, and is thus delivered on the main thread "a long time" (in "real timecode" terms) after the actual timecode has passed by, and frames can quite easily be dropped from the notification.
For display purposes, it is "good enough", but it's nowhere near good enough to drive slaving a device, nor for generating MTC or LTC off of. You need accurate timing signal, generated off the actual playback threads, to generate reliable MTC or LTC. Furthermore, tying into the control surface interface would mean he'd have to parse the MCU stream coming through, and I'm not sure what he'd do when he sees something other than timecode text (say feet+frames or frames); also I would imagine it would mean a lot of configuration and confusion on behalf of the users, as to why this device would have to appear as a control surface.
The only way I know of that this could be accomplished today would be via a dedicated audio channel, and an AudioUnit that generates LTC (I've written one in the past, so I know it's possible). If the device in question had a USB interface to it from the computer, then that interface could include an USB audio class device that exposed a single channel, and that channel could consume the LTC and generate MTC (or whatever).
Then again, if it's just for display purposes, maybe emulating a MCU device would be good enough...
Hope this helps...
Cheers,
Helena