新细分市场

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

是一组共享公共开始时间、停止时间和播放速率的媒体示例。 IPin::NewSegment 方法向新段的开始发出信号。 它为源筛选器提供了一种方法,用于通知下游筛选器时间和速率信息已更改。 例如,如果源筛选器查找流中的新点,它将使用新的开始时间调用 NewSegment

某些下游筛选器在处理样本时使用段信息。 例如,在使用帧间压缩的格式中,如果停止时间落在增量帧上,则源筛选器可能需要在停止时间之后发送其他样本。 这使解码器能够解码最终的增量帧。 为了确定正确的最终帧,解码器引用段停止时间。 再举一例,音频呈现器使用段速率和音频采样率来生成正确的音频输出。

在推送模型中,源筛选器启动 NewSegment 调用。 在拉取模型中,这由分析器筛选器完成。 在任一情况下,筛选器在下游输入引脚上调用 NewSegment ,这会将调用传播到下一个筛选器,直到调用到达呈现器。 筛选器必须使用其他流式处理调用(如 IMemInputPin::Receive)序列化 NewSegment 调用。

每个新段后,流时间重置为零。 段后提供的样本的时间戳从零开始。