配置视频流以寻求性能

某些播放应用程序对单个流执行大量查找操作。 查找是一个性能可能因流的设置而大有不同的领域。 如果你知道需要优化内容以便快速查找,则可以定制流配置以提高性能。

影响视频中查找操作速度的最大因素是关键帧的间距。 由于关键帧之间的每个帧都需要基于其前面的帧进行重建,因此,广泛间隔的关键帧会导致查找时间更长。 例如,如果每秒 30 帧的视频流的最大关键帧间距为 10 秒,则关键帧之间可能存在 300 帧。 如果查找到最后一个 增量帧,则必须重新构造 299 帧才能解压缩帧。 如果每个帧重建花费 0.01 秒,则查找将花费近 3 秒。 如果要提高查找效率,降低关键帧间距可能会有所帮助。 但是,如果将关键帧设置得太近,可能会失去质量。

可以通过调用 IWMVideoMediaProps::SetMaxKeyFrameSpacing 来设置最大关键帧间距。 下表列出了基于流的比特率的建议值。 这些值在寻求性能和质量方面提供了良好的平衡。 SDK 不会对关键帧之间的时间强制实施任何限制。 通常,超过 30 秒的时间可能会对通过网络流式传输内容和在本地播放内容时查找时间产生负面影响。

比特率 建议的最大关键帧间距
22 Kbps 到 300 Kbps 8 秒
300 Kbps 到 600 Kbps 6 秒
600 Kbps 到 2 Mbps 4 秒
2 Mbps 及更高 3 秒

 

有关在查找视频文件时获得最佳性能的详细信息,请参阅 获取最佳视频查找性能

配置流