在编写编码器、解码器、效果器应用时,鼓励用DMO代替 DirectShow filter

1.1. DirectShow支持的格式 
    DirectShow是一个开放的框架,因此只要有合适的filter来分析和解码,它可以支持任何格式。DirectShow默认支持以下的文件类型和压缩格式: 
    注:打*号的需要Windows Media Format SDK支持 
    文件类型: 
      Windows Media? Audio (WMA)* 
      Windows Media? Video (WMV)* 
      Advanced Systems Format (ASF)* 
      Motion Picture Experts Group (MPEG) 
      Audio-Video Interleaved (AVI) 
      QuickTime (version 2 and lower) 
      WAV 
      AIFF 
      AU 
      SND 
      MIDI 
    压缩格式: 
      Windows Media Video* 
      ISO MPEG-4 video version 1.0* 
      Microsoft MPEG-4 version 3* 
      Sipro Labs ACELP* 
      Windows Media Audio* 
      MPEG Audio Layer-3 (MP3) (decompression only) 
      Digital Video (DV) 
      MPEG-1 (decompression only) 
      MJPEG 
      Cinepak 
    微软自己没有提供MPEG2解码器,一些可用的DirectShow MPEG2硬件或软件解码器是由第三方提供的。 
1.2. 常见问题集(摘录) 
1.2.1. 一般问题
 
*DirectShow支持哪些操作系统? 
      DirectShow 支持Windows9X、Windows2000、Windows Me和Windows XP。 
*使用 DirectShow需要多少COM知识? 
      应用程序开发者只需要基本的COM组件知识:实例化COM组件、调用接口、管理接口的引用计数。Filter开发者则需要更多。 
*有与DirectShow兼容的硬件列表(HCL)吗? 
      没有。如果硬件兼容DirectShow,DirectShow会使用它们,如果没有兼容的硬件,DirectShow使用GDI绘制视频,以及使用 WaveOut系列多媒体API来播放音频。 
*可以使用哪些语言来编写DirectShow应用? 
      DirectShow 主要为C/C++开发设计。Visual Basic只能使用其中的很小一部分。可以通过MS JScript或VB Script来支持基于脚本的DVD和TV应用。也可能用Delphi来编写,但SDK文档不提供这方面的内容。 
*DirectShow 会通过托管代码实现吗? 
      目前还没有这个计划。DirectX SDK提供了有限的使用音视频回放类的托管回放功能,你可以使用COM interop创建托管代码的DirectShow客户端应用,但是因为性能上的原因,不推荐创建运行在CLR上的filter。

*DirectShow开发需要什么样的编译器 ? 
      任何能够产生COM对象的编译器都可以。 
*DirectShow和DirectX的其它组件的关系 
      DirectShow 和DirectX的其它组件在内部进行联系。DirectShow在硬件的支持下使用DirectSound和DirectDraw。Video Renderer和Overlay Mixer使用DirectDraw 3和DirectDraw5表面(surfaces)。Video Mixing Renderer 7(只支持WINXP)使用DirectDraw7表面。Video Mixing Renderer 9使用最新的(目前是Directx9)Direct3D API函数。即便是某个应用程序包含了DirectX其它组件,你也不必使用其它组件的API去编写它。参考SDK的例子:Texture3D Sample。 
*DirectShow与ActiveMovie的关系? 
      ActiveMovie 是DirectShow原来的名称,现已不再使用,但是一部分API仍保留了"AM"的前缀,比如AM_MEDIA_TYPE和 IAMVideoAccelerator。 
*DirectShow是限于多媒体应用吗? 
      DirectShow 默认包含的组件主要是为音视频流设计的,但是,DirectShow框架已经成功地用于其它数据流的解决方案中。 
*GraphEdit 工具有源码吗?GraphEdit.exe是否可再发布? 
      没有源码,不可再发布。 
*DMO 可以代替DirectShow filter吗? 
      在编写编码器、解码器、效果器应用时,鼓励用DMO代替 DirectShow filter。在其它的应用中,使用DirectShow filter可能会比较合适。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值