Introduction to DirectShow
DirectShow介绍
Microsoft® DirectShow® is an architecture for streaming media on the Microsoft Windows® platform. DirectShow provides for high-quality capture and playback of multimedia streams. It supports a wide variety of formats, including Advanced Streaming Format (ASF), Motion Picture Experts Group (MPEG), Audio-Video Interleaved (AVI), MPEG Audio Layer-3 (MP3), and WAV sound files. It supports capture from digital and analog devices based on the Windows Driver Model (WDM) or Video for Windows. DirectShow is integrated with other DirectX technologies. It automatically detects and uses video and audio acceleration hardware when available, but also supports systems without acceleration hardware.
微软DirectShow是微软Windows平台下的一个流媒体架构。DirectShow提供多媒体流高质量的捕捉与回放。它支持多种格式,包括高级流格式(ASF)、运动图像专家组(MPEG)、音视频交错(AVI)、MPEG音频层-3(MP3)与WAV声音文件。它支持从基于Windows Driver Model(WDM)或Video for Windows的数字设备与类似的设备上捕捉信息。DirectShow是与其它DirectX技术结合起来的。它自动检测视频与音频硬件加速,并当硬件加速可用时就使用它;但它也支持没有硬件加速的系统。
DirectShow simplifies media playback, format conversion, and capture tasks. At the same time, it provides access to the underlying stream control architecture for applications that require custom solutions. You can also create your own DirectShow components to support new formats or custom effects.
DirectShow使媒体回放、格式转换与捕捉任务简单化了。同时,它提供给需要定制解决方案的应用程序有权使用根本的流控制架构。你也能够创建自己的DirectShow组件来支持新的格式或定制效果。
Examples of the types of C++ applications you can write with DirectShow include file players, TV and DVD players, video editing applications, file format converters, audio-video capture applications, encoders and decoders, digital signal processors, and more. In Visual Basic you can create basic playback applications only. This documentation set covers both C++ and Visual Basic topics. Audio-video playback based on managed code is supported through Managed DirectX 9.0 and is not part of DirectShow.
你能够用DirectShow来编写以下一些类型的C++例子程序,包括文件播放器、TV与DVD播放器、视频编辑程序、文件格式转换、音频视频捕捉程序、编码器与解码器、数字信号处理器或者更多其它应用程序。在Visual Basic里面你仅仅能够创建基本的回放应用程序。这个文档集包含有C++与Visual Basic两方面的主题。基于管理代码的音频-视频回放要通过管理DirectX 9.0才被支持,但它不是DirectShow的一部分。
DirectShow is based on the Component Object Model (COM). To write a DirectShow application or component, you must understand COM client programming. For most applications, you do not need to implement your own COM objects. DirectShow provides the components you need. (If you want to extend DirectShow by writing your own components, however, you must implement them as COM objects.)
DirectShow是基于组件对象模型(COM)的。为了编写DirectShow应用程序或组件,你必须懂得COM客户端的编程。对于很多应用程序来说,你不需要实现自己的COM对象。DirectShow提供了你需要的组件。(如果你想通过编写自己的组件来扩充DirectShow,然而,你必须把它们实现为COM对象。)
This section contains the following topics:
这个部分包含以下主题:
1.What's New in DirectShow
1.DirectShow有什么更新?
2.Supported Formats in DirectShow
2.DirectShow支持的格式
3.DirectShow FAQ
3.DirectShow常见问题解答