IAudioClient::Start 方法 (audioclient.h)
Start 方法启动音频流。
语法
HRESULT Start();
返回值
如果该方法成功,则它会返回 S_OK。 如果失败,可能的返回代码包括但不限于下表中显示的值。
返回代码 | 说明 |
---|---|
|
音频流尚未成功初始化。 |
|
开始 呼叫时 音频流未停止。 |
|
音频流配置为使用事件驱动的缓冲,但调用方尚未调用 IAudioClient::SetEventHandle 来设置流上的事件句柄。 |
|
音频终结点设备已拔出,或者音频硬件或关联的硬件资源已重新配置、禁用、删除或以其他方式不可用。 |
|
Windows 音频服务未运行。 |
注解
此方法需要事先初始化 IAudioClient 接口。 在客户端通过成功调用 IAudioClient::Initialize 方法初始化音频流之前,对此方法的所有调用都将失败并出现错误AUDCLNT_E_NOT_INITIALIZED。
Start 是客户端调用以启动音频流的控制方法。 启动流会导致 IAudioClient 对象开始在终结点缓冲区和音频引擎之间流式传输数据。 它还会导致流的音频时钟从其当前位置恢复计数。
在初始化流后首次调用此方法时, IAudioClient 对象的流位置计数器从 0 开始。 否则,时钟将从上次停止流时的位置恢复。 重置流会强制流位置回到 0。
若要避免呈现流出现启动故障,客户端在通过调用呈现接口上的 IAudioRenderClient::ReleaseBuffer 方法,在音频引擎最初加载数据之前,不应调用 Start。
有关调用 Start 方法的代码示例,请参阅以下主题:
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista [桌面应用 | UWP 应用] |
最低受支持的服务器 | Windows Server 2008 [桌面应用 | UWP 应用] |
目标平台 | Windows |
标头 | audioclient.h |