Microsoft DirectX 8.1 (C++)

Writing Applications for WDM Analog TV Devices

Note   The techniques described here no longer represent the recommended method for developing analog TV applications. With Windows XP Home Edition and Windows XP Professional, the Video Control greatly simplifies TV application development. It handles the complexities of building analog WDM TV filter graphs as well as digital BDA filter graphs, provides support for applications written in scripting languages or Visual Basic®, and enables additional features such as Conditional Access.

It is also important to note that some of the filters discussed here are available on Windows XP Home Edition and Windows XP Professional only, and so any application based on these filters will only run on that operating system. If you wish to create an analog or digital TV application that runs on earlier versions of Windows, use the DirectX® 8.1 SDK.

This article contains the following sections:

Analog TV filter graphs are based on analog television tuner-capture cards. A single card will generally contain several devices: the tuner, zero or more crossbars for routing the signal, the analog-to-digital converter (also called the analog video decoder), and possibly a separate device for TV audio. The Microsoft® Windows Driver Model® (WDM) device drivers for each device on the card are supplied by the manufacturer or other third parties. These drivers work together with filters and plug-ins supplied by Microsoft to enable the devices to participate in a filter graph. The Microsoft-supplied components are the TV Tuner filter, the TV Audio filter, the Analog Video Crossbar filter, and the WDM Video Capture plug-in. In GraphEdit, these filters appear in the "WDM Streaming" categories; the friendly name of the filter will vary depending on the driver. Applications discover these filters using the System Device Enumerator. For details on how to discover these devices programmatically, see Enumerating Devices and Filters. For general information on using hardware devices in DirectShow, see How Hardware Devices Participate in the Filter Graph.

In addition to the device filters mentioned previously, an analog TV filter graph will also include kernel mode (KsProxy-based) and user mode filters supplied by Microsoft as part of DirectShow. These filters include the Tee/Sink-to-Sink Converter, Video Port Manager, CC Decoder, Line 21 Decoder 2, Video Mixing Renderer, and possibly others. These filters are discussed in more detail in a later section.