相互排除对象

[与此页面关联的功能(Windows Media Format 11 SDK)是一项旧功能。 它已被 源读取器接收器编写器取代。 源读取器接收器编写器 已针对 Windows 10 和 Windows 11 进行了优化。 Microsoft强烈建议新代码尽可能使用 源读取器接收器编写器,而不是 Windows 媒体格式 11 SDK。 Microsoft建议重写使用旧 API 的现有代码,以尽可能使用新 API。]

相互排除对象用于指定多个流,其中一次只能传递一个流。 这可以通过多种方式使用,例如以多种语言提供音频流作为一个视频流的配乐。

相互排除是配置文件的可选部分。 可以为配置文件中的现有相互排斥信息创建相互排除对象,也可以为空创建,以便接收新数据。 互斥对象不能独立于配置文件对象存在。 若要保存互斥对象的内容,必须调用 IWMProfile::AddMutualExclusion

若要创建相互排除对象,请使用以下方法之一。

方法 描述
IWMProfile::CreateNewMutualExclusion 创建不带任何数据的相互排除对象。
IWMProfile::GetMutualExclusion 创建使用配置文件中的数据填充的相互排除对象。 使用相互排除索引标识所需的相互排除信息。

 

上表中的两种方法都设置了指向 IWMMutualExclusion 接口的指针。 IWMStreamList 接口由 IWMMutualExclusion 继承,且无需直接访问。 可以通过调用 QueryInterface 方法来获取互斥对象的另一个接口。

每个相互排除对象都支持以下接口。

接口 描述
IWMMutualExclusion 设置和检索要使用的相互排除的类型。
IWMMutualExclusion2 将流组织成记录,这些记录可用于创建复杂的相互排除方案。 继承 IWMMutualExclusion的所有方法。
IWMStreamList 管理互斥流的列表。

 

相互排斥

对象

Profile Manager 对象