IMXF::SetState 方法 (dmusicks.h)
SetState 方法用于设置 MIDI 转换接口的状态。
语法
NTSTATUS SetState(
KSSTATE State
);
参数
State
指定要将筛选器图设置为的状态。 此参数是 KSSTATE 枚举值。 有关详细信息,请参阅以下“备注”部分。
返回值
此方法返回 NTSTATUS,如果调用成功,则返回包含STATUS_SUCCESS。 否则,该方法将返回适当的错误代码。
言论
对于音频筛选器图,四个 KSSTATE 枚举值解释如下:
价值 | 州 |
---|---|
KSSTATE_RUN | 一切都在运行,正常运行。 在此状态下,IMXF 接口将处于活动状态,并照常传递消息。 |
KSSTATE_ACQUIRE | 这是一种过渡状态,可帮助管理KSSTATE_RUN和KSSTATE_STOP之间的转换。 在此状态下,无法在筛选器图中下游传递消息。 |
KSSTATE_PAUSE | 这是一种过渡状态,可帮助管理KSSTATE_RUN和KSSTATE_STOP之间的转换。 |
KSSTATE_STOP | 当前筛选器图中已停止所有内容。 |
微型端口驱动程序的行为取决于筛选器图的状态。 此行为因呈现(输出)和捕获(输入)而异。
在输出端,如果当前状态不是KSSTATE_RUN,则 IMXF 接口应保留数据,而不是将其传递给硬件。 如果当前状态为KSTATE_STOP则微型端口驱动程序应放弃通过向分配器传递该数据来提供的任何数据。
在输入端,如果输入流位于KSSTATE_RUN或KSSTATE_PAUSE,则微型端口驱动程序从分配器获取消息并将其发送到捕获接收器是合法的。 如果状态KSSTATE_STOP或KSSTATE_ACQUIRE并且硬件正在尝试生成数据,则应丢弃该数据。
要求
要求 | 价值 |
---|---|
标头 | dmusicks.h |
IRQL | PASSIVE_LEVEL |