IMiniportMidiStream::SetState 方法(portcls.h)

SetState 方法将流的传输状态设置为新的状态值。

语法

NTSTATUS SetState(
  [in] KSSTATE State
);

参数

[in] State

指定要将流设置为的新状态。 此参数是 KSSTATE 枚举值。 有关详细信息,请参阅以下“备注”部分。

返回值

如果调用成功,SetState 返回STATUS_SUCCESS。 否则,该方法将返回适当的错误代码。

言论

对于音频筛选器图,四个 KSSTATE 枚举值解释如下:

  • KSSTATE_RUN

    当前音频筛选器图中的数据传输正在运行,正常运行。

  • KSSTATE_ACQUIRE

    这是一种过渡状态,可帮助管理KSSTATE_RUN和KSSTATE_STOP之间的转换。

  • KSSTATE_PAUSE

    这是一种过渡状态,可帮助管理KSSTATE_RUN和KSSTATE_STOP之间的转换。

  • KSSTATE_STOP

    在当前音频筛选器图中停止数据传输。

对于大多数微型端口驱动程序,KSSTATE_ACQUIRE和KSSTATE_PAUSE不可区分。 IMiniportMidi::NewStream 方法将流的初始状态设置为KSSTATE_STOP。

转换始终在以下两个序列之一中发生:

  • STOP -> ACQUIRE -> PAUSE -> RUN
  • RUN -> PAUSE -> ACQUIRE -> STOP

要求

要求 价值
目标平台 普遍
标头 portcls.h (包括 Portcls.h)
IRQL PASSIVE_LEVEL

另请参阅

IMiniportMidi::NewStream

IMiniportMidiStream

KSPROPERTY_CONNECTION_STATE

KSSTATE