流同步

DVD 流输入可以由两个或多个流组成。 流类驱动程序可以代表 DVD 解码器微型驱动程序以透明方式处理同步。 有关详细信息,请参阅 微型驱动程序同步。 程序员仍必须了解影响 DVD 流的几个因素,包括:

  • 音频流必须提供主时钟,并且必须在没有数据时合成时钟。 音频数据停止时,音频流将根据 KeQueryPerformanceCounter 返回的时钟频率和速率匹配情况使用系统时钟。 所有其他流都必须充当音频的从属。 也就是说,它们将其性能同步到音频流。

  • 用户模式必须支持软件音频解码器。 时钟转发器 DirectShow 过滤器将 DirectShow 时钟转发到微型驱动程序。 微型驱动程序对此一无所知。

  • 解码器不应使用主要基本流 (PES) 标头中的时间戳。

  • 同步中不使用系统时钟引用(SCR)。 DVD PACK 的 SCR 字段设置为零,因为Microsoft的 DVD 体系结构使用“主时钟”范例进行音频和视频同步。

  • 微型驱动程序检测不到时间戳不连续性。 DVD 导航器/拆分器将所有时间戳调整为连续模式。

如果解码器同时为音频和视频提供解码功能,解码器只能在音频流作为系统主时钟打开时使用硬件同步。 如果音频流不是主时钟,则视频流必须将视频解码同步到流类主时钟。