Программирование звука в DirectSound - Интерфейс IDirectSoundCaptureBuffer
ОГЛАВЛЕНИЕ
Страница 22 из 22
Интерфейс IDirectSoundCaptureBuffer
Обслуживает буфер захвата. Подобен интерфейсу IDirectSoundBuffer, однако для каждого устройства может существовать только один буфер захвата; и нет разделения на первичный и вторичные буферы.
Интерфейс содержит следующие методы:
Initialize | Инициализация объекта буфера |
---|---|
GetCaps | Запрос параметров буфера |
GetFormat | Запрос формата буфера |
GetCurrentPosition | Запрос текущих позиций в буфере |
GetStatus | Запрос состояния буфера |
Lock | Запрос обновления данных в буфере |
Unlock | Завершение обновления данных в буфере |
Start | Запуск захвата в буфер |
Stop | Остановка захвата в буфер |
Initialize - инициализация объекта буфера
HRESULT IDirectSoundCaptureBuffer::Initialize (
DIRECTSOUNDCAPTURE *CaptureDev,
LPCDSCBUFFERDESC BufferDesc
);
- CaptureDev - указатель объекта устройства захвата;
- BufferDesc - указатель описателя буфера (структура DSCBUFFERDESC).
Метод подобен IDirectSoundBuffer::Initialize.
GetCaps - запрос параметров буфера
HRESULT IDirectSoundCaptureBuffer::GetCaps (
DSCBCAPS *Caps
);
- Caps - указатель описателя параметров буфера захвата (структура DSCBCAPS).
Метод подобен IDirectSoundBuffer::GetCaps.
GetFormat - запрос формата буфера
HRESULT IDirectSoundCaptureBuffer::GetFormat (
WAVEFORMATEX *Format,
DWORD SizeAllocated,
DWORD *SizeWritten
);