Microsoft DirectX 8.1 (C++)

BDA Filter Interfaces

The following section contains reference pages for low-level interfaces that are used in communication between the Broadcast Driver Architecture (BDA) Device filters, and other filters in the graph, specifically the BDA Network Provider and BDA IP Sink filter. This documentation is relevant for those who are developing a custom Network Provider filter or a BDA device driver. Applications based on DirectX 8.1 will need to use the IScanningTuner interface on the Network Provider in order to submit tune requests. No other interfaces are intended for use by applications. Specifically, applications should never attempt to perform tuning by controlling the BDA device filters directly, but should always use the tuning abstraction layer provided by the Microsoft Unified Tuning Model.

Network Provider Interfaces

Interface Description
IBDA_NetworkProvider Provides methods that BDA device filters call to register themselves after they are added to the graph.
IBDA_EthernetFilter Provides methods that are called by the BDA IPSink filter in order to give the Network Provider a list of multicast Ethernet addresses being requested by an application.
IBDA_IPV4Filter Provides methods that are called by the BDA IPSink filter in order to give the Network Provider a list of multicast IPv4 Ethernet addresses being requested by an application.
IBDA_IPV6Filter Provides methods that are called by the BDA IPSink filter in order to give the Network Provider a list of multicast IPv6 Ethernet addresses being requested by an application.
IScanningTuner Provides methods that permit direct control of a tuner that supports searching for valid programming.
ITuner Provides methods for passing tune requests down to the hardware device and receiving current tuning settings.

BDA IP Sink Interfaces

Interface Description
IBDA_IPSinkControl Implemented on the BDA IP Sink filter, which manages the delivery of in-band IP data to the network stack.
IBDA_IPSinkInfo This interface supercedes IBDA_IPSinkControl.

BDA Device Filter Interfaces

The following interfaces are automatically exposed on BDA device filters through the KsProxy wrapper filter which translates Ring 0 property sets and method sets on device drivers into Ring 3 COM interfaces. In other words, these interfaces are how the device drivers communicate with the Network Provider in the filter graph. (For more information, see How Hardware Devices Participate in the Filter Graph.)

Since these interfaces are simply translations of driver property and method sets, readers are referred to the Microsoft® Windows DDK for more information.

Interface Description
IBDA_AutoDemodulate If a BDA device filter, specifically a demodulator, exposes this interface, it indicates that the filter can automatically detect signal characteristics.
IBDA_DeviceControl Implemented on all BDA device filters. The methods provided by this interface are called by a Network Provider to control a BDA device.
IBDA_DigitalDemodulator Exposed on BDA demodulators that are not capable of automatically detecting the characteristics of a signal.
IBDA_FrequencyFilter Implemented on a BDA tuner device, and is used by the Network Provider to tell the tuner how to set its frequencies.
IBDA_LNBInfo Implemented on a BDA device filter, specifically an LNB device. The methods are called by the Network Provider to instruct the device on how to acquire the satellite signal.
IBDA_NullTransform Implemented on all BDA device filters. The Network Provider filter calls these methods to instruct the filter to either pass data through without modifying it, or else to perform its particular transformation on the data.
IBDA_PinControl Exposed on a BDA device filter's pins. A Network Provider calls these methods to determine the type and ID of each pin on the filter.
IBDA_SignalStatistics Implemented on a BDA device filter and provides methods by which the filter can describe the condition of a signal that is being received.
IBDA_Topology Provides methods that are used by a Network Provider to discover the capabilities of a device filter, and to control it.
IBDA_VoidTransform Implemented on a BDA device filter. It is used by the Network Provider to inactivate a portion of a filter graph without stopping the graph.