For timecode...
Basically, All Orbiter cares about, is that a given media player has a port that it exposes.
For Xine_Player, this is port 12000. Play a movie, connect to a media director's IP, port 12000, while this happens...
you'll get back a comma delimited set of values, that updates, once each second. Orbiter deals with this directly, and every single orbiter in the house connects to the media player port. This port is specified in the device data of the media player device, (DEVICEDATA_Port_CONST), and should be adhered to, because Orbiter uses this value directly. The timecode should be dealt with in its own thread, doing any synchronization as needed back with the main command thread.
-Thom