## IAMTimecodeDisplay Interface

The IAMTimecodeDisplay interface contains properties and methods that define behavior of an external SMPTE/MIDI timecode display device. This interface should be implemented in combination with IAMExtDevice, IAMExtTransport, and the other timecode interfaces to control an external device, such as a VCR, which can read, generate and/or display timecode data. This interface controls the physical timecode character generator display that is either built into a VCR or is on some other similar external device.

For more information on SMPTE timecode see the Control an External Device in DirectShow overview article.

When to Implement

Implement this interface on an external device filter that will control the timecode display on an external timecode reader or generator. Timecode readers or generators can be built into a VCR or can be a separate external device. Do not try to implement this interface if your external device can't display timecode or if your timecode is being generated through an internal card with no integral or overlay hardware.

This interface is not intended for rendering in a DirectShow filter graph, it is purely for use on external device displays.

When to Use

Use this interface when applications need to control an external device and how it's timecode information is displayed.

Hardware Requirements

See the IAMExtTransport interface for hardware requirements.

Methods in Vtable Order

IUnknown methods | Description
QueryInterface | Retrieves pointers to supported interfaces.
AddRef | Increments the reference count.
Release | Decrements the reference count.

IAMTimecodeDisplay methods | Description
GetTCDisplayEnable | Determines whether an external device's timecode character generator output is enabled or disabled.
SetTCDisplayEnable | Enables or disables an external device's timecode character output generator.
GetTCDisplay | Retrieves current settings of the timecode character generator output.
SetTCDisplay | Sets the timecode character generator output characteristics.

###

IAMTimecodeDisplay::GetTCDisplay

IAMTimecodeDisplay Interface

Retrieves current settings of the timecode character generator output.

HRESULT GetTCDisplay(
long Param,
long *pValue
);

##### Parameters

Param
  [in] Timecode display characteristic. Specify one of the following items you want to get settings for.

  Value | Meaning
  ED_TCD_BORDER | White border for black characters, black border for white characters
  ED_TCD_INTENSITY | Intensity (brightness) of characters
  ED_TCD_INVERT | Black characters on white background or white characters on black background
  ED_TCD_POSITION | Position of characters
  ED_TCD_SIZE | Size of characters
  ED_TCD_SOURCE | Source of display's data
  ED_TCD_TRANSPARENCY | Transparency of characters

pValue
  [out] Current setting of the parameter specified in Param. This parameter retrieves one of the following values:

  Value | Meaning
  If ED_TCD_SOURCE specified in Param, will return one of the following:
  ED_TCG | TimeCode generator
  ED_TCR | TimeCode reader
  If , ED_TCD_SIZE specified in Param, will return one of the following:
  ED_LARGE | Large
  ED_MED | Medium
  ED_SMALL | Small
  If ED_TCD_POSITION specified in Param, will return one of the following:
  ED_BOTTOM | Bottom
  ED_MIDDLE | Middle
  ED_TOP | Top
  in combination with:
  ED_CENTER | Center
  ED_LEFT | Left
  ED_RIGHT | Right
  If ED_TCD_INTENSITY specified in Param, will return one of the following:
  ED_HIGH | High
  ED_LOW | Low
  If ED_TCD_TRANSPARENCY is specified in Param, will return a value from 0 to 4, 0 being completely opaque.
  If ED_TCD_INVERT specified in Param, will return one of the following:
  OAFALSE | Black characters on white background
  OATRUE | White characters on black background
  If ED_TCD_BORDER specified in Param, will return one of the following:
  OAFALSE | Black characters for white border
  OATRUE | White border for black characters

##### Return Values

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

##### See Also

IAMTimecodeDisplay::SetTCDisplay

###

IAMTimecodeDisplay::GetTCDisplayEnable

IAMTimecodeDisplay Interface

Determines whether an external device's timecode character generator output is enabled or disabled.

HRESULT GetTCDisplayEnable(
long *pState
);

##### Parameters

pState
  [out] OATRUE specifies enabled; OAFALSE specifies disabled.

##### Return Values

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

##### Remarks

This method is not intended for character rendering inside a filter graph, it is purely intended for hardware displays. Ensure that your external timecode reader or generator has display capability before trying to use this method.

##### See Also

IAMTimecodeDisplay::SetTCDisplayEnable

###

IAMTimecodeDisplay::SetTCDisplay

IAMTimecodeDisplay Interface

Sets the timecode character generator output characteristics.

HRESULT SetTCDisplay(
long Param,
long Value
);

##### Parameters

Param
  [in] Timecode display characteristic. Specify one of the following properties you want to set properties for.

  Value | Meaning
  ED_TCD_BORDER | White border for black characters, black border for white characters
  ED_TCD_INTENSITY | Intensity (brightness) of characters
  ED_TCD_INVERT | Black characters on white background or white characters on black background
  ED_TCD_POSITION | Position of characters
  ED_TCD_SIZE | Size of characters
  ED_TCD_SOURCE | Source of the display's data
  ED_TCD_TRANSPARENCY | Transparency of characters

Value
  [in] Setting of the parameter specified in Param. Must be one of the following:

  Value | Meaning
  If ED_TCD_SOURCE specified in Param, set one of the following:
  ED_TCG | TimeCode generator
  ED_TCR | TimeCode reader
  If , ED_TCD_SIZE specified in Param, set one of the following:
  ED_LARGE | Large
  ED_MED | Medium
  ED_SMALL | Small
  If ED_TCD_POSITION specified in Param, set one of the following:
  ED_BOTTOM | Bottom
  ED_MIDDLE | Middle
  ED_TOP | Top
  In combination with:
  ED_CENTER | Center
  ED_LEFT | Left
  ED_RIGHT | Right
  If ED_TCD_INTENSITY specified in Param, set one of the following:
  ED_HIGH | High
  ED_LOW | Low
  If ED_TCD_TRANSPARENCY specified in Param, set a value from 0 to 4, 0 being completely opaque, 4 being as dark as possible.
  If ED_TCD_INVERT specified in Param, set one of the following:
  OAFALSE | Black on white
  OATRUE | White on black
  If ED_TCD_BORDER specified in Param, set one of the following:
  OAFALSE | Black characters for white border
  OATRUE | White border for black characters

##### Return Values

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

##### See Also

IAMTimecodeDisplay::GetTCDisplay

###

IAMTimecodeDisplay::SetTCDisplayEnable

IAMTimecodeDisplay Interface

Enables or disables an external device's timecode character output generator.

HRESULT SetTCDisplayEnable(
long State
);

##### Parameters

State
  [in] Specify OATRUE to enable; OAFALSE to disable.

##### Return Values

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

##### Remarks

This method is not intended for rendering characters inside a filter graph, it is purely intended for hardware displays. Ensure that your external timecode reader or generator has display capability before trying to use this method.

##### See Also

IAMTimecodeDisplay::GetTCDisplayEnable

© 1997 Microsoft Corporation. All rights reserved. Terms of Use.