Microsoft DirectX 8.0

DirectShow System Overview

The Challenge of Multimedia

Working with multimedia presents several major challenges:

The DirectShow Solution

DirectShow is designed to address each of these challenges. Its main design goal is to simplify the task of creating multimedia applications on the Windows® platform by isolating applications from the complexities of data transports, hardware differences, and synchronization issues.

To achieve the throughput necessary for streaming video and audio, DirectShow uses DirectDraw® and DirectSound® to render data efficiently to the system's sound and graphics cards. Synchronization is achieved by encapsulating the multimedia data in time-stamped media samples. To handle the variety of sources, formats, and hardware devices, DirectShow uses a modular architecture in which operating system components called filters can be mixed and matched to provide support for many different scenarios.

DirectShow includes filters that support cutting-edge multimedia capture and tuning devices based on the Windows Driver Model (WDM) as well as filters that support legacy Video for Windows (VfW) capture cards and older codecs written for the Audio Compression Manager (ACM) and Video Compression Manager (VCM) interfaces.

The following diagram shows the relationship between an application, the DirectShow components, and some of the hardware and software components that DirectShow supports.


High Level Architecture


As illustrated here, DirectShow enables applications to play files and streams from various sources, including local files, local CD and DVD drives, remote files on a network, newer TV-tuner and video capture cards based on the Windows Driver Model (WDM), and legacy Video For Windows® video capture cards. DirectShow has native compressors and decompressors for some file formats, and many third-party hardware and software decoders are compatible with DirectShow. In addition, DirectShow supports legacy VfW codecs based on the Video Compression Manager (VCM) and Audio Compression Manager (ACM) interfaces. Playback makes full use of DirectDraw hardware acceleration and DirectSound capabilities when the hardware supports it.