IAudioCaptureClient::GetNextPacketSize 方法 (audioclient.h)
GetNextPacketSize 方法检索捕获终结点缓冲区中下一个数据包中的帧数。
语法
HRESULT GetNextPacketSize(
[out] UINT32 *pNumFramesInNextPacket
);
参数
[out] pNumFramesInNextPacket
指向 UINT32 变量的指针,方法在其中写入帧计数 (下一个捕获数据包) 中的音频帧数。
返回值
如果该方法成功,则它会返回 S_OK。 如果失败,可能的返回代码包括但不限于下表中显示的值。
返回代码 | 说明 |
---|---|
|
音频终结点设备已拔出,或者音频硬件或关联的硬件资源已重新配置、禁用、删除或以其他方式不可用。 |
|
Windows 音频服务未运行。 |
|
参数 pNumFramesInNextPacket 为 NULL。 |
注解
仅对共享模式流使用此方法。 它不适用于独占模式流。
在调用 IAudioCaptureClient::GetBuffer 方法检索下一个数据包之前,客户端可以调用 GetNextPacketSize 来检索下一个数据包中的音频帧数。 GetNextPacketSize 报告的计数与 GetNextPacketSize 调用后通过 pNumFramesToRead 输出参数) 在 GetBuffer 调用 (检索的计数匹配。
数据包始终包含整数数量的音频帧。
GetNextPacketSize 必须与获取和释放捕获终结点缓冲区中的数据包的 GetBuffer 和 IAudioCaptureClient::ReleaseBuffer 方法调用在同一线程中调用。
有关使用 GetNextPacketSize 方法的代码示例,请参阅捕获Stream。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista [桌面应用 | UWP 应用] |
最低受支持的服务器 | Windows Server 2008 [桌面应用 | UWP 应用] |
目标平台 | Windows |
标头 | audioclient.h |
另请参阅
IAudioCaptureClient::GetBuffer