DirectShow Samples

The DirectShow samples are included with the Windows SDK. They are located under the path [SDK Root] \Samples\Multimedia\DirectShow.

The following table lists all of the DirectShow samples provided in the Windows SDK. For instructions on how to build the samples, refer to the documentation provided in the Windows SDK.

If there is additional documentation for a sample, the first column of this table links to it.

Sample Area Description Additional Dependencies
DirectShow Base Classes Base class libraryC++ classes and utility functions designed for implementing DirectShow filters.
AmCap Sample CaptureVideo capture application.strmbase.lib
DVApp Sample CaptureDigital Video (DV) capture application.
PlayCap Sample CaptureSimple capture application.
DMO Demo Sample DMOStreams audio data from a WAV file through an audio effect DMO.DirectX SDK
DVD SampleDVDDemonstrates basic DVD playback and navigation, plus advanced features such as parental level management, bookmarks, karaoke, and command synchronization.
InfTee Filter Sample Filters, miscellaneousSample implementation of the Infinite Pin Tee filter.strmbase.lib
Metronome Filter Sample Filters, miscellaneousShows how to implement a reference clock.strmbase.lib
PSI Parser Filter Sample Filters, miscellaneousReceives Program Specific Information (PSI) tables from an MPEG-2 transport stream and extracts program information.strmbase.lib
Dump Filter Sample Filters, rendererWrites media samples receives to a text file.strmbase.lib
SampVid FilterFilters, rendererVideo renderer filter.strmbase.lib
Scope Filter Sample Filters, rendererDisplays sound data as wave forms.strmbase.lib
Async Filter Sample Filters, sourceFile reader filter that supports progressive download.strmbase.lib
Ball Filter Sample Filters, sourceVideo source filter that produces an image of a bouncing ball.strmbase.lib
Push Source Filters Sample Filters, sourceSource filters that provide the following data as a video stream: A single bitmap, a set of bitmaps, a copy of the current desktop image.strmbase.lib
Synth Filter Sample Filters, sourceSource filter that generates audio waveforms. This sample demonstrates dynamic graph building.strmbase.lib
EZRGB24 Filter Sample Filters, transformImage processing filter.strmbase.lib
Gargle Filter Sample Filters, transformAudio effect filter.strmbase.lib
WavDest Filter Sample Filters, transformWrites an audio stream to a WAV file.strmbase.lib
DMOEnum Sample MiscellaneousShows how to enumerate DirectX Media Objects (DMOs).
Mapper Sample MiscellaneousShows how to use the Filter Mapper to find filters in the registry.
SysEnum SampleMiscellaneousDemonstrates using the System Device Enumerator to enumerate devices and filters.
CutScene Sample PlaybackPlays a video file in full-screen mode.
DDrawXCL SamplePlaybackPlays video in DirectDraw exclusive full-screen mode, using the IDDrawExclModeVideo interface on the Overlay Mixer filter.
DShowPlayer SamplePlaybackVideo playback application.
EVRPlayer SamplePlaybackDemonstrates how to use the DirectShow EVR filter.

Note  Requires Windows Vista or later.

This sample is available in the Windows SDK for Windows Server 2008 or later.

Texture3D9 SamplePlaybackDraws video on a Microsoft DirectX 9.0 texture surface.strmbase.lib, DirectX SDK
Ticker Sample VMR-9Uses the VMR-9 to blend video and text.
VMR9Allocator SampleVMR-9Implements a custom allocator-presenter for the VMR-9.strmbase.lib
VMR9Compositor SampleVMR-9Implements a custom mixer for the VMR-9.
VMRPlayer Sample VMR-9Uses the VMR-9 to blend one or two running videos and a static image.
Watermark SampleVMR-9Blends a static bitmap onto a video during playback, using the VMR-9.
Windowless Sample VMR-9Demonstrates windowless mode in the VMR-9.


Additional Dependencies

Some of the samples link to the DirectShow base class library. To build these samples, you must first build the base class library. For more information, see DirectShow Base Classes. The base class library is required for all of the sample filters.

A few of the samples also require the DirectX SDK, in addition to the Windows SDK. To build these samples, you must install the DirectX SDK and set the %DXSDK_DIR% environment variable equal to your DirectX SDK installation path.

Many of the DirectShow samples use a set of common headers and source files located in the directrory [SDK Root]\Samples\Multimedia\DirectShow\Common. If you copy a sample folder to another directory, make sure to copy the Common folder as well.

Related topics

Setting Up the Build Environment