Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Func.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.58 Mб
Скачать

Wavehdr

typedef struct {

LPSTR lpData;

DWORD dwBufferLength;

DWORD dwBytesRecorded;

DWORD dwUser;

DWORD dwFlags;

DWORD dwLoops;

struct wavehdr_tag * lpNext;

DWORD reserved;

} WAVEHDR;

Переменные

  1. lpData — указатель на буфер аудио информации.

  2. dwBufferLength — длина буфера в байтах.

  3. dwBytesRecorded — если данный буфер используется для записи аудио информации, в данной переменной содержится размер записанной в буфер информации.

  4. dwUser — пользовательские данные.

  5. dwFlags — флаги, содержащие информацию о буфере. Определены следующие значения.

  • WHDR_BEGINLOOP — буфер является первым в цикле. Этот флаг устанавливается только для буферов, используемых для вывода аудио информации.

  • WHDR_DONE — устанавливается драйвером устройства для указания на то, что он завершил работу с данным буфером и возвратил его приложению.

  • WHDR_ENDLOOP — буфер является последним в цикле. Этот флаг устанавливается только для буферов, используемых для вывода аудио информации.

  • WHDR_INQUEUE — устанавливается операционной системой для указания на то, что данный буфер помещён в очередь на воспроизведение.

  • WHDR_PREPARED — устанавливается операционной системой для указания на то, что данный буфер подготовлен функцией waveInPrepareHeader или waveOutPrepareHeader.

  1. dwLoops — число циклов воспроизведения. Этот флаг устанавливается только для буферов, используемых для вывода аудио информации.

  2. wavehdr_tag — зарезервирована для дальнейшего использования.

  3. reserved — зарезервирована для дальнейшего использования.

Примечание

Объект структуры WAVEHDR определяет дескриптор, используемый для идентификации аудио буфера.

Флаги WHDR_BEGINLOOP и WHDR_ENDLOOP, устанавливаемые в переменной dwFlags, используются для маркировки первого и последнего блока при циклическом воспроизведении. Для циклического воспроизведения одного блока следует установить для него оба эти флага. Переменная dwLoops объекта структуры WAVEHDR определяет число циклов воспроизведения указанного фрагмента.

Переменные lpData, dwBufferLength и dwFlags должны быть инициализированы до вызова функций waveInPrepareHeader и waveOutPrepareHeader. (Для каждой из этих функций переменная dwFlags должна иметь нулевое значение.)

Описание данной структуры содержится в файле заголовка mmsystem.h.

Waveincaps

typedef struct {

WORD wMid;

WORD wPid;

MMVERSION vDriverVersion;

CHAR szPname[MAXPNAMELEN];

DWORD dwFormats;

WORD wChannels;

WORD wReserved1;

} WAVEINCAPS;

Переменные

  1. wMid — идентификатор производителя драйвера устройства ввода аудио информации. Значения данных идентификаторов перечислены в файле заголовка Mmreg.h.

  2. wPid — идентификатор устройства ввода аудио информации. Значения данных идентификаторов перечислены в файле заголовка Mmreg.h.

  3. vDriverVersion — номер версии драйвера устройства ввода аудио информации. В старшем байте данного слова содержится главный номер версии (располагается до десятичной точки), а в младшем — дополнительный номер версии (располагается после десятичной точки).

  4. szPname — наименование устройства, располагающееся в строке, завершающейся нулём.

  5. dwFormats — стандартные форматы, поддерживаемые устройством. Данная переменная может содержать комбинацию следующих значений:

  • WAVE_FORMAT_1M08 — монофонический звук с частотой дискретизации 11,025 КГц и 8-битовым кодированием отсчёта.

  • WAVE_FORMAT_1M16 — монофонический звук с частотой дискретизации 11,025 КГц и 16-битовым кодированием отсчёта.

  • WAVE_FORMAT_1S08 — стереофонический звук с частотой дискретизации 11,025 КГц и 8-битовым кодированием отсчёта.

  • WAVE_FORMAT_1S16 — стереофонический звук с частотой дискретизации 11,025 КГц и 16-битовым кодированием отсчёта.

  • WAVE_FORMAT_2M08 — монофонический звук с частотой дискретизации 22,05 КГц и 8-битовым кодированием отсчёта.

  • WAVE_FORMAT_2M16 — монофонический звук с частотой дискретизации 22,05 КГц и 16-битовым кодированием отсчёта.

  • WAVE_FORMAT_2S08 — стереофонический звук с частотой дискретизации 22,05 КГц и 8-битовым кодированием отсчёта.

  • WAVE_FORMAT_2S16 — стереофонический звук с частотой дискретизации 22,05 КГц и 16-битовым кодированием отсчёта.

  • WAVE_FORMAT_4M08 — монофонический звук с частотой дискретизации 44,1 КГц и 8-битовым кодированием отсчёта.

  • WAVE_FORMAT_4M16 — монофонический звук с частотой дискретизации 44,1 КГц и 16-битовым кодированием отсчёта.

  • WAVE_FORMAT_4S08 — стереофонический звук с частотой дискретизации 44,1 КГц и 8-битовым кодированием отсчёта.

  • WAVE_FORMAT_4S16 — стереофонический звук с частотой дискретизации 44,1 КГц и 16-битовым кодированием отсчёта.

  1. wChannels — число каналов, поддерживаемых устройством. Значению 1 соответствует монофонический режим, а значению 2 — стереофонический.

  2. wReserved1 — наложение.

Примечание

Объект структуры WAVEINCAPS используется для хранения информации о параметрах устройства записи аудио информации.

Описание данной структуры содержится в файле заголовка mmsystem.h.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]