The IAMAnalogVideoDecoder interface specifies and retrieves information about the process of video digitization. It contains methods for selecting the digitization format, indicating the horizontal lock status, and controlling the time constant on the digitizer phase lock loop (PLL).
Implement this interface on Microsoft® DirectShow® filters that control hardware devices that digitize analog video signals.
Applications should use this interface to select and control the various aspects of video digitization, such as getting and setting the supported analog video format, determining whether the horizontal sync is locked, and retrieving other various information about the digitization format.
Methods in Vtable Order
IUnknown methods Description QueryInterface Retrieves pointers to supported interfaces. AddRef Increments the reference count. Release Decrements the reference count. IAMAnalogVideoDecoder methods Description get_AvailableTVFormats Retrieves the currently available analog video formats. put_TVFormat Sets the current analog video format. get_TVFormat Retrieves the current analog video format. get_HorizontalLocked Determines whether the horizontal sync is locked. put_VCRHorizontalLocking Sets the condition for being connected to a VCR (changes PLL timing). get_VCRHorizontalLocking Determines whether horizontal locking has been set. get_NumberOfLines Retrieves the number of horizontal lines in the current video signal. put_OutputEnable Enables or disables the output bus. get_OutputEnable Determines whether the output bus is enabled.
Retrieves the currently available analog video formats.
Syntax
HRESULT get_AvailableTVFormats( long *lAnalogVideoStandard );
Parameters
- lAnalogVideoStandard
- [out] Pointer to an integer that represents the available analog video formats. This can potentially be several values from the AnalogVideoStandard enumerated type, combined by a logical OR operation.
Return Value
Returns an HRESULT value that depends on the implementation of the interface. HRESULT can include one of the following standard constants, or other values not listed.
E_FAIL Failure. E_INVALIDARG Argument is invalid. E_NOTIMPL Method is not supported. E_POINTER Null pointer argument. S_OK Success.
Determines whether the horizontal sync is locked.
Syntax
HRESULT get_HorizontalLocked( long *plLocked );
Parameters
- plLocked
- [out] Pointer to a value indicating whether the horizontal sync is locked; TRUE indicates the horizontal sync is locked, FALSE indicates that it is not.
Return Value
Returns an HRESULT value that depends on the implementation of the interface. HRESULT can include one of the following standard constants, or other values not listed.
E_FAIL Failure. E_INVALIDARG Argument is invalid. E_NOTIMPL Method is not supported. E_POINTER Null pointer argument. S_OK Success.
Retrieves the number of horizontal lines in a video signal.
Syntax
HRESULT get_NumberOfLines( long *plNumberOfLines );
Parameters
- plNumberOfLines
- [out] Pointer to the number of horizontal lines in the video signal. For NTSC, this will generally be 525, and for PAL/SECAM, it will typically be 625.
Return Value
Returns an HRESULT value that depends on the implementation of the interface. HRESULT can include one of the following standard constants, or other values not listed.
E_FAIL Failure. E_INVALIDARG Argument is invalid. E_NOTIMPL Method is not supported. E_POINTER Null pointer argument. S_OK Success.
Determines whether the output bus is enabled or disabled.
Syntax
HRESULT get_OutputEnable( long *plOutputEnable );
Parameters
- plOutputEnable
- [out] Pointer to a value specifying whether the output bus is enabled; returns TRUE if it is enabled, FALSE if it is disabled.
Return Value
Returns an HRESULT value that depends on the implementation of the interface. HRESULT can include one of the following standard constants, or other values not listed.
E_FAIL Failure. E_INVALIDARG Argument is invalid. E_NOTIMPL Method is not supported. E_POINTER Null pointer argument. S_OK Success.
Retrieves the current analog video format.
Syntax
HRESULT get_TVFormat( long *plAnalogVideoStandard );
Parameters
- plAnalogVideoStandard
- [out] Pointer to the AnalogVideoStandard enumerated type, which contains the supported analog video formats.
Return Value
Returns an HRESULT value that depends on the implementation of the interface. HRESULT can include one of the following standard constants, or other values not listed.
E_FAIL Failure. E_INVALIDARG Argument is invalid. E_NOTIMPL Method is not supported. E_POINTER Null pointer argument. S_OK Success.
Determines whether horizontal locking has been set.
Syntax
HRESULT get_VCRHorizontalLocking( long *plVCRHorizontalLocking );
Parameters
- plVCRHorizontalLocking
- [out] Pointer to a value indicting whether horizontal locking is set. TRUE indicates horizontal locking is set; FALSE otherwise.
Return Value
Returns an HRESULT value that depends on the implementation of the interface. HRESULT can include one of the following standard constants, or other values not listed.
E_FAIL Failure. E_INVALIDARG Argument is invalid. E_NOTIMPL Method is not supported. E_POINTER Null pointer argument. S_OK Success.
Remarks
VCRs might have bad sync timing (due to tape slips, tape noise or dropouts, and the mechanical nature of the recording mechanism). Having the horizontal locking on tells the decoder to relax its standards, which leads to a better chance of maintaining sync.
Enables or disables the output bus.
Syntax
HRESULT put_OutputEnable( long lOutputEnable );
Parameters
- lOutputEnable
- [in] Value indicating if the output bus is enabled; specify TRUE to enable it, FALSE to disable it.
Return Value
Returns an HRESULT value that depends on the implementation of the interface. HRESULT can include one of the following standard constants, or other values not listed.
E_FAIL Failure. E_INVALIDARG Argument is invalid. E_NOTIMPL Method is not supported. E_POINTER Null pointer argument. S_OK Success.
Sets the current format to one of the supported analog video standards.
Syntax
HRESULT put_TVFormat( long lAnalogVideoStandard );
Parameters
- lAnalogVideoStandard
- [in] Value from the AnalogVideoStandard enumerated type, which contains the supported analog video formats.
Return Value
Returns an HRESULT value that depends on the implementation of the interface. HRESULT can include one of the following standard constants, or other values not listed.
E_FAIL Failure. E_INVALIDARG Argument is invalid. E_NOTIMPL Method is not supported. E_POINTER Null pointer argument. S_OK Success.
Specifies whether horizontal locking is set.
Syntax
HRESULT put_VCRHorizontalLocking( long lVCRHorizontalLocking );
Parameters
- lVCRHorizontalLocking
- [in] Value indicating whether horizontal locking is set.
Return Value
Returns an HRESULT value that depends on the implementation of the interface. HRESULT can include one of the following standard constants, or other values not listed.
E_FAIL Failure. E_INVALIDARG Argument is invalid. E_NOTIMPL Method is not supported. E_POINTER Null pointer argument. S_OK Success.
Remarks
VCRs might have bad sync timing (due to tape slips, tape noise or dropouts, and the mechanical nature of the recording mechanism). This method tells the decoder to relax its standards, which leads to a better chance of maintaining sync.
Top of Page
© 2000 Microsoft and/or its suppliers. All rights reserved. Terms of Use.