MPEG-1 流拆分器筛选器

[与此页面关联的功能 DirectShow 是一项旧功能。 它已被 MediaPlayerIMFMediaEngine媒体基金会中的音频/视频捕获取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用 MediaPlayerIMFMediaEngineMedia Foundation 中的音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]

此筛选器将 MPEG-1 系统流拆分为其组件音频和视频流。

Label
筛选器接口 IAMMediaContentIAMStreamSelectIBaseFilter
输入引脚媒体类型 主要类型:MEDIATYPE_Stream
亚:
  • MEDIASUBTYPE_MPEG1System
  • MEDIASUBTYPE_MPEG1VideoCD
  • MEDIASUBTYPE_Audio
  • MEDIASUBTYPE_Video
请参阅 MPEG-1 媒体类型
输入引脚接口 IMemInputPinIPinIQualityControl
输出引脚媒体类型 主要类型:MEDIATYPE_Audio或MEDIATYPE_Video
子类型:MEDIASUBTYPE_MPEG1Payload或MEDIASUBTYPE_MPEG1Packet
请参阅 MPEG-1 媒体类型
输出引脚接口 IPinIMediaSeeking
筛选器 CLSID CLSID_MPEG1Splitter
属性页 CLSID 无属性页
可执行文件 quartz.dll
优点 MERIT_NORMAL
筛选器类别 CLSID_LegacyAmFilterCategory

 

备注

此文件仅支持通过 IAsyncReader 的拉取模式;它不支持推送模式。

由于 MPEG-1 内容未编制索引,因此查找可能非常近似。 它通常适用于固定比特率 MPEG-1 系统流 (通常是为视频 CD) 生成的硬件。

筛选器支持用于检索 ID3 元数据的 IAMMediaContent 接口。

并非所有 MPEG 示例都有时间戳。 MPEG 示例上缺少时间戳不是错误。 对于筛选器开发人员来说,这意味着如果 IMediaSample::GetTime 失败,则不应从输入引脚的 Receive 方法返回错误代码。 如果 Receive 返回除 S_OK 以外的任何值,则会导致拆分器停止发送样本。

如果文件包含视频流,则 MPEG-1 流拆分器支持按帧编号查找。 若要启用基于帧的查找,请在 Filter Graph 管理器上调用 IMediaSeeking::SetTimeFormat,其值TIME_FORMAT_FRAME

DirectShow 筛选器