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


Метод IAudioClient::Start (audioclient.h)

Метод Start запускает аудиопоток.

Синтаксис

HRESULT Start();

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

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

Код возврата Описание
AUDCLNT_E_NOT_INITIALIZED
Аудиопоток не инициализирован.
AUDCLNT_E_NOT_STOPPED
Звуковой поток не был остановлен во время вызова Start .
AUDCLNT_E_EVENTHANDLE_NOT_SET
Аудиопоток настроен для использования буферизации на основе событий, но вызывающий объект не вызвал IAudioClient::SetEventHandle , чтобы задать дескриптор событий в потоке.
AUDCLNT_E_DEVICE_INVALIDATED
Устройство конечной точки звука было отключено, или звуковое оборудование или связанные аппаратные ресурсы были перенастроены, отключены, удалены или иным образом стали недоступными для использования.
AUDCLNT_E_SERVICE_NOT_RUNNING
Аудиослужба Windows не запущена.

Комментарии

Этот метод требует предварительной инициализации интерфейса IAudioClient . Все вызовы этого метода завершаются ошибкой AUDCLNT_E_NOT_INITIALIZED до тех пор, пока клиент не инициализирует аудиопоток, вызвав метод IAudioClient::Initialize .

Start — это метод управления, который клиент вызывает для запуска аудиопотока. Запуск потока приводит к тому, что объект IAudioClient начинает потоковую передачу данных между буфером конечной точки и подсистемой аудио. Это также приводит к возобновлению подсчета звуковых часов потока из текущей позиции.

При первом вызове этого метода после инициализации потока счетчик положения потока объекта IAudioClient начинается с 0. В противном случае часы возобновляются с позиции во время последней остановки потока. При сбросе потока положение потока возвращается к 0.

Чтобы избежать сбоев запуска с потоками отрисовки, клиенты не должны вызывать метод Start , пока звуковой модуль не будет изначально загружен с данными путем вызова методов IAudioRenderClient::GetBuffer и IAudioRenderClient::ReleaseBuffer в интерфейсе отрисовки.

Примеры кода, вызывающие метод Start , см. в следующих разделах:

Требования

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

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

Интерфейс IAudioClient

IAudioClient::Initialize

IAudioRenderClient::GetBuffer

IAudioRenderClient::ReleaseBuffer