MF_TOPOSTATUS 枚举 (mfapi.h)
指定播放期间拓扑的状态。
语法
typedef enum {
MF_TOPOSTATUS_INVALID = 0,
MF_TOPOSTATUS_READY = 100,
MF_TOPOSTATUS_STARTED_SOURCE = 200,
MF_TOPOSTATUS_DYNAMIC_CHANGED = 210,
MF_TOPOSTATUS_SINK_SWITCHED = 300,
MF_TOPOSTATUS_ENDED = 400
} MF_TOPOSTATUS;
常量
MF_TOPOSTATUS_INVALID 值: 0 不使用此值。 |
MF_TOPOSTATUS_READY 值: 100 拓扑已准备好启动。 收到此状态标志后,可以使用媒体会话的 IMFGetService::GetService 方法查询服务拓扑,例如速率控制。 |
MF_TOPOSTATUS_STARTED_SOURCE 值: 200 媒体会话已开始从拓扑中的媒体源读取数据。 |
MF_TOPOSTATUS_DYNAMIC_CHANGED 值: 210 媒体会话修改了拓扑,因为流的格式发生了更改。 |
MF_TOPOSTATUS_SINK_SWITCHED 值: 300 媒体接收器已从以前的拓扑切换到此拓扑。 不会为播放的第一个拓扑发送此状态值。 对于第一个拓扑, MESessionStarted 事件指示媒体接收器已开始接收数据。 |
MF_TOPOSTATUS_ENDED 值: 400 此拓扑的播放已完成。 媒体会话可能仍在内部使用拓扑。 在发送下一个 MF_TOPOSTATUS_STARTED_SOURCE 状态事件或 MESessionEnded 事件之前,媒体会话不会完全释放拓扑。 |
注解
此枚举与 MESessionTopologyStatus 事件一起使用。 MESessionTopologyStatus 事件始终具有 MF_EVENT_TOPOLOGY_STATUS 属性,其值是此枚举的成员。
对于单个拓扑,媒体会话以数字顺序发送这些状态标志,从 MF_TOPOSTATUS_READY开始。 但是,无法保证跨两个不同拓扑对事件进行排序。 例如,在获取上一个拓扑 的MF_TOPOSTATUS_ENDED 之前,可能会获得拓扑 的MF_TOPOSTATUS_READY 。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 [仅限桌面应用] |
标头 | mfapi.h |