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. |
Retrieves current settings of the timecode character generator output.
HRESULT GetTCDisplay(
long Param,
long *pValue
);
| 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 |
| 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 |
Returns an HRESULT value that depends on the implementation of the interface.
IAMTimecodeDisplay::SetTCDisplay
Determines whether an external device's timecode character generator output is enabled or disabled.
HRESULT GetTCDisplayEnable(
long *pState
);
Returns an HRESULT value that depends on the implementation of the interface.
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.
IAMTimecodeDisplay::SetTCDisplayEnable
Sets the timecode character generator output characteristics.
HRESULT SetTCDisplay(
long Param,
long Value
);
| 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 | 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 |
Returns an HRESULT value that depends on the implementation of the interface.
IAMTimecodeDisplay::GetTCDisplay
Enables or disables an external device's timecode character output generator.
HRESULT SetTCDisplayEnable(
long State
);
Returns an HRESULT value that depends on the implementation of the interface.
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.
IAMTimecodeDisplay::GetTCDisplayEnable
© 1997 Microsoft Corporation. All rights reserved. Terms of Use.