其他源对象
[与此页面关联的功能 DirectShow 是旧版功能。 它已被 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获所取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能在 Media Foundation 中使用 MediaPlayer、 IMFMediaEngine 和 音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
[此 API 不受支持,将来可能会更改或不可用。]
除了视频和音频源, DirectShow Editing Services (DES) 还支持以下源对象。
静止图像
DES 支持静态图像的以下文件格式:
- 位图 (.bmp)
- GIF (图形交换格式)
- JPEG (联合摄影专家组)
- Targa 或 Truevision Graphics Adapter (.tga) :模式 2 (16 位、24 位或 32 位格式的未压缩 RGB) 。
这些文件可用作静态图像或创建动画。 对于位图、JPEG 和 Targa 文件,如果将该文件用作静止图像,请调用 IAMTimelineSrc::SetDefaultFPS 方法将帧速率设置为零。
DIB 序列
给定一系列位图、JPEG 或 Targa 文件,呈现引擎可以构造 DIB 序列。 若要创建 DIB 序列,请为文件指定数字顺序名称,例如Image001.bmp、Image002.bmp、Image003.bmp等。 使用序列中的第一个文件作为源。 通过调用 IAMTimelineSrc::SetDefaultFPS 设置序列的帧速率。 呈现引擎以指定的帧速率循环访问序列中的图像。
如果序列太短,无法填充持续时间(给定帧速率),则持续时间的其余部分为纯黑色。 呈现期间未发生错误。
GIF 源
DES 使用 GIF89a 规范支持 GIF 源,包括动画和透明 GIF。 使用动画 GIF 时,与其他文件类型不同,无需设置帧速率。 GIF 文件指定动画中每个图像之间的延迟。
为了支持透明 GIF,DES 将图像中的透明区域转换为 RGB 三重 RGB (0,0,0) 。 然后,可以在 RGB (0,0,0) 上使用 密钥转换 到键。
DES 还会将 rgb (0-7,0–7,0–7,0–7) 范围内的任何黑色区域转换为 RGB (8,8,8) 值(透明度索引除外),如果它位于该范围内。 眼睛无法检测到这种转换。
视频颜色源
视频颜色源 对象创建纯色的连续视频图像。 此对象的一个用途是使其成为转换中的层。 例如,在视频淡入或淡出中使用它。
自定义源筛选器
如果筛选器满足以下条件,DES 可以将 DirectShow 源筛选器用作时间线源:
- 它支持查找
- 它生成 DES 支持的格式。 只要用户的系统具有能够解码该格式的 DirectShow 筛选器,就可以压缩该格式。
若要使用自定义源,请将筛选器的 CLSID 指定为源对象的子对象 GUID。 有关详细信息,请参阅 子对象。 若要支持自定义属性,请将其实现为 IDispatch “put”属性。 源对象仅支持静态属性;不支持动态属性。
相关主题