AVStream is a Microsoft-provided multimedia class driver that supports video-only streaming and integrated audio/video streaming. Microsoft provides AVStream as part of the operating system, in the export driver ks.sys. Hardware vendors write minidrivers that run under ks.sys.
In the AVStream driver model, vendors provide a minidriver that interacts with a Microsoft-provided class driver, as shown in the following diagram:Relationship Between AVStream and KS Services
Broadcast Driver Architecture Drivers
Broadcast Driver Architecture (BDA) drivers control hardware that manipulate a digital broadcast signal.
Broadcast Receiver Topology
one possible functional topology that receives digital broadcast content. It illustrates the operations necessary to:
The types of control nodes and filters that are shown in the figures in the Control Nodes, Filters and Hardware section are common to the reception of digital satellite, terrestrial, and cable broadcasts. However, you can create other node types and filters for a wide variety of broadcast media and devices as well. It is important to remember that each control node need not correspond to a single BDA device filter. In some cases, a single BDA device filter can encapsulate more than one control node.
The following list describes control nodes and filters that are commonly found in Broadcast Architecture:
A network provider:
Each network provider can build a different graph configuration for its associated network type. Applications pass tune requests to a network provider, which in turn passes the information to a BDA minidriver. See the Broadcast Architecture section of the Microsoft Windows SDK documentation for more information.
Note Starting with Windows Vista, the IPSink filter is not supported.
Broadcast Driver Architecture (BDA) minidrivers control hardware that performs the following operations:
BDA minidriver architecture
BDA minidrivers are AVStream minidrivers that run under the AVStream module in the kernel-streaming driver ks.sys. AVStream is a class driver that provides a unified kernel streaming class model for both audio and video minidrivers, and that supports use of COM objects without altering existing minidriver binaries. The AVStream class driver provides much of the default behavior required to make a minidriver's filter work as a WDM kernel streaming compliant filter. To simplify the task of writing BDA minidrivers, you can use the BDA support library (Bdasup.lib) of functions that is included in the Microsoft Windows Driver Kit (WDK). This library provides extensive default handling for the BDA minidriver's property and method sets.
Typically, driver writers only have to code the appropriate static template structures, register them with the BDA support library, and then let the library provide default handling for all the properties and methods. In some