## Documentation Roadmap

The Microsoft® DirectShow™ SDK documentation is delivered in HTML format (which you can read by using a browser) and in .ivt format (which you can read using Microsoft InfoViewer). The Microsoft Developer Network (MSDN) Library and Microsoft Visual C++®, as well as other Microsoft products, install InfoViewer for you.

When you install the DirectShow SDK, the HTML documentation is always installed. The HTML start page, Start.htm, is available in the main installation directory (Dxmedia by default). If the DirectShow installation finds InfoViewer on your computer, it also installs and registers the .ivt documentation. The next time you open InfoViewer (through Visual C++, MSDN, or another program) the DirectShow SDK documentation will be available under the "DirectX Media SDK" heading.

For the most recent updates to this documentation, consult the Microsoft DirectX Web site at http://www.microsoft.com/DirectX/.

The DirectShow SDK documentation contains general sections that provide information useful to everyone, and sections that apply to particular tasks. Getting Started and DirectShow Basics contain high-level information useful to everyone. ActiveMovie Control, Application Developer's Guide, and Filter's Developer's Guide contain procedures and technical information specific to their respective topics. Multimedia Streaming describes the simplified streaming interfaces that enable developers to interface to a stream without creating a custom renderer or source filter. DirectDrawEx describes the DirectDrawEx dynamic-link library, which extends the current functionality of DirectDraw. Filters and Samples contains a brief description of the filters and sample applications shipped with DirectShow. C/C++ Reference is the DirectShow Reference. Appendixes contain supplemental information to the reference, and Glossary defines DirectShow terms.

See What Background Do You Need? to find out what background different tasks require.

Contents of this article:

- Where Can I Learn About...
- How to Get More Information

To help you find the information you need, the following list describes the content of each section in the DirectShow documentation and when you will typically use it.

- Getting Started — gives general information about DirectShow, such as background needed to use DirectShow, material new in this release, and frequently asked questions. Read this section to orient yourself when first starting with DirectShow.
- ActiveMovie Control — describes the ActiveMovie Control's features and how to use it to play back movies in different applications, such as C/C++, Visual Basic, or an HTML Web page. This section also contains the HTML reference and the Visual Basic 5.x reference, which describes using DirectShow COM interfaces as Visual Basic objects. Read this section if you want to use the control.
- DirectShow Basics — contains overview articles covering basic DirectShow concepts, such as filter graph architecture and data flow, how to use the Filter Graph Editor tool, and a list of the filters and sample filters supplied with DirectShow. Read this section for a high-level introduction to DirectShow, whether you are developing your own filters or developing an application that uses the supplied filters.
- Application Developer's Guide — contains articles about developing applications, including a discussion of media streaming, a list of application interfaces, and step-by-step procedures for adding features to your applications. Read this section if you want to develop applications with DirectShow.
- Filter's Developer's Guide — contains technical articles about creating filters, including different filter types, connecting and controlling filters, and step-by-step procedures for creating specific filters, such as capture filters and DirectSound renderer filters. Read this section if you want to write your own filters.
- C/C++ Reference — contains the COM interface and class library references, structures, utility functions, events, error messages, and debugging tips. Read this section to get details about an interface or a data type.
- Filters and Samples — contains a brief description of the filters and sample applications shipped with DirectShow and available for use or for modification in your own applications. Read this section to create a prototype application from the supplied filters or to see if the filter you want to create already exists.
- Multimedia Streaming — contains an overview of the multimedia streaming architecture, a list of the multimedia streaming interfaces, and the multimedia interface references. Read this section to learn how to use the multimedia streaming interfaces to automatically negotiate the transfer and conversion of data from the source to the application, so you don't have to write code to handle the connection, transfer of data, data conversion, and actual data rendering or file storage. The streaming interfaces provide a uniform and predictable method of data access and control, which makes it easy for an application to play back data, regardless of its original source or format.
- DirectDrawEx — contains an overview of the DirectDrawEx dynamic-link library, which extends the current functionality of DirectDraw, and reference material for the IDirectDrawFactory and IDirectDraw3 interfaces.
- Appendixes — contains miscellaneous technical information, including a list of AM_MEDIA_TYPE structure values supported in DirectShow, information about time stamps and DirectShow DVD support, country codes and channel-to-frequency mappings for TV tuner applications, and the reserved identifiers in the DirectShow header files. Read this section if you need details about one of these topics.
- Glossary — defines DirectShow-specific terminology you might not be familiar with.

Where Can I Learn About...

This section tells you where to find information in the DirectShow documentation about specific tasks and topics. Also see the "Frequently Asked Questions" section for answers to common questions.

Q. Where should I begin reading in the DirectShow documentation?

A. Read for an overview and then read the articles in the and sections that match your interest. See Debugging with DirectShow for debugging information.

Q: Where can I find information about capture?

A: See the following capture topics.

- About Capture Filter Graphs
- Improving Capture Performance
- Creating a Capture Application
- Recompress an AVI File
- Write an Audio Capture Filter
- Write a Video Capture Filter
- Enumerate and Access Hardware Devices in DirectShow Applications

DirectShow provides the following capture-related filters. The video renderer is often used for purposes other than capture.

- ACM Audio Compressor
- Audio Capture
- AVI MUX
- DV Muxer filter
- File Writer
- VFW Video Capture
- VidCap Sample (Video Capture Filter)
- Video Renderer

Capture-related interfaces:

- IAMAudioInputMixer
- IAMDroppedFrames
- IAMStreamConfig
- IAMVfwCaptureDialogs
- IAMVfwCompressDialogs
- IAMVideoCompression
- ICaptureGraphBuilder
- ICreateDevEnum

Q. Where can I find information about playing back movies using the C or C++ language?

A. Read Play a Movie from C++ in the .

Q. Where can I find information about playing back movies using Microsoft® Visual Basic®?

A. If you are using the ActiveMovie Control, see Using the ActiveMovie Control in Visual Basic. If you are constructing or controlling a filter graph with Visual Basic, see Constructing Filter Graphs Using Visual Basic and Controlling Filter Graphs Using Visual Basic in the section.

Q. Where can I find information about playing back movies from a Web page?

A. Read Using the ActiveMovie Control in HTML Pages in the section.

Q. Where can I find a class hierarchy diagram for the DirectShow base classes?

A. Each class in the DirectShow C++ Class Library section has its own class hierarchy diagram at the top of its opening page.

Q. Where can I find information about the filters shipped with DirectShow?

A. For a description of each of the filters included with the DirectShow run time, as well as the sample filters included with the SDK, see . When the SDK is installed, all sample filters are built and registered.

### How to Get More Information

You can find most of the information you need beyond a knowledge of your particular programming language and the DirectShow documents themselves in the Platform SDK, available in the Microsoft Developer Network. See http://www.microsoft.com/msdn/ for more information.

COM Overview and DirectShow and COM can give you an introduction to Component Object Model (COM), and this might suffice for many development tasks in DirectShow. If you need more information, see the "COM" section in the Platform SDK, or an introductory book such as Understanding ActiveX OLE by David Chappell.

For more information about DirectDraw or DirectSound, see the Microsoft DirectX® SDK documentation in the Platform SDK.

For more information about multimedia in general, see the "Graphics and Multimedia Services" section in the Platform SDK.

For more information about Microsoft Windows® messaging, see the "Win32 Messages" section in the "Reference" portion of the Platform SDK.

For more information about media control interface (MCI), see the "MCI" section in the Platform SDK.

For more information about C/C++ programming, read the product documentation for your C/C++ compiler (such as the Microsoft Visual C++® documentation), or a standard C or C++ programming book. For more information about Visual Basic programming, read the Visual Basic product documentation.

© 1997 Microsoft Corporation. All rights reserved. Terms of Use.