Поделиться через


Метод IAudioCaptureClient::GetNextPacketSize (audioclient.h)

Метод GetNextPacketSize извлекает количество кадров в следующем пакете данных в буфере конечной точки отслеживания.

Синтаксис

HRESULT GetNextPacketSize(
  [out] UINT32 *pNumFramesInNextPacket
);

Параметры

[out] pNumFramesInNextPacket

Указатель на переменную UINT32 , в которую метод записывает число кадров (количество аудиокадров в следующем пакете захвата).

Возвращаемое значение

Если метод завершается успешно, возвращает значение S_OK. В случае сбоя возможные коды возврата включают, помимо прочего, значения, показанные в следующей таблице.

Код возврата Описание
AUDCLNT_E_DEVICE_INVALIDATED
Устройство конечной точки аудио отключено, звуковое оборудование или связанные аппаратные ресурсы были перенастроены, отключены, удалены или иным образом недоступны для использования.
AUDCLNT_E_SERVICE_NOT_RUNNING
Служба звука Windows не запущена.
E_POINTER
Параметр pNumFramesInNextPacket имеет значение NULL.

Комментарии

Используйте этот метод только с потоками общего режима. Он не работает с потоками в монопольном режиме.

Перед вызовом метода IAudioCaptureClient::GetBuffer для получения следующего пакета данных клиент может вызвать Метод GetNextPacketSize , чтобы получить количество аудиокадров в следующем пакете. Счетчик, сообщаемый GetNextPacketSize , соответствует количеству, полученному в вызове GetBuffer (через выходной параметр pNumFramesToRead ), который следует за вызовом GetNextPacketSize .

Пакет всегда состоит из целого числа аудиокадров.

Метод GetNextPacketSize должен вызываться в том же потоке, что и вызовы методов GetBuffer и IAudioCaptureClient::ReleaseBuffer , которые получают и освобождают пакеты в буфере конечной точки записи.

Пример кода, в котором используется метод GetNextPacketSize, см. в разделе Захват Stream.

Требования

Требование Значение
Минимальная версия клиента Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2008 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header audioclient.h

См. также раздел

Интерфейс IAudioCaptureClient

IAudioCaptureClient::GetBuffer

IAudioCaptureClient::ReleaseBuffer

IAudioClient::GetCurrentPadding