Microsoft DirectX 9.0


The SetTCRMode method sets the timecode reader properties.


  long Param,
  long Value



[in] Property you want to set (use ED_TCR_SOURCE or ED_TCR_NOTIFY_ENABLE).


[in] Value of the specified property; If Param returns ED_TCR_NOTIFY_ENABLE, then this value will return OATRUE or OAFALSE. IfParam returns ED_TCR_SOURCE, then this value must be one of the following.

Value Description
ED_TCR_CT Control Track.
ED_TCR_LTC Linear Timecode.
ED_TCR_VITC Vertical Interval Timecode.
ED_TCR_LAST_VALUE Return last read value.

Return Values

Returns an HRESULT value that depends on the implementation of the interface.


Linear timecode is recorded on an analog audio track as an NRZ bi-phase mark-encoded signal. Each timecode frame is one video frame time in duration.

Vertical timecode is usually stored in two lines of a video signal's vertical interval, somewhere between 10 and 20.

Control track is a once-per-frame signal recorded on a special track on a tape. The head and drive servo mechanisms use it to keep everything locked. It is also used to drive the counter on machines without timecode capability, and can optionally be used on machines equipped with a timecode reader.

Note that ED_TCR_LAST_VALUE is used when implementing timecode notification because the application does not want to initiate another timecode request to the external device. This method is not recommended for frame-accurate applications because of multithreading issues.

See Also