Структура ACMSTREAMHEADER (msacm.h)
Структура ACMSTREAMHEADER определяет заголовок, используемый для идентификации пары источника преобразования ACM и буфера назначения для потока преобразования.
Синтаксис
typedef struct tACMSTREAMHEADER {
DWORD cbStruct;
DWORD fdwStatus;
DWORD_PTR dwUser;
LPBYTE pbSrc;
DWORD cbSrcLength;
DWORD cbSrcLengthUsed;
DWORD_PTR dwSrcUser;
LPBYTE pbDst;
DWORD cbDstLength;
DWORD cbDstLengthUsed;
DWORD_PTR dwDstUser;
DWORD dwReservedDriver[_DRVRESERVED];
} ACMSTREAMHEADER, *PACMSTREAMHEADER, *LPACMSTREAMHEADER;
Члены
cbStruct
Размер структуры ACMSTREAMHEADER в байтах. Этот элемент должен быть инициализирован перед тем, как приложение вызовет любые функции потока ACM с помощью этой структуры. Размер, указанный в этом элементе, должен быть достаточно большим, чтобы содержать базовую структуру ACMSTREAMHEADER .
fdwStatus
Флаги, предоставляющие сведения о буферах преобразования. Этот элемент должен быть инициализирован до нуля, прежде чем приложение вызовет функцию acmStreamPrepareHeader , и не должен быть изменен приложением, пока заголовок потока остается подготовленным.
Имя | Описание |
---|---|
|
Устанавливается ACM или драйвером, чтобы указать, что оно завершено с преобразованием и возвращает буферы в приложение. |
|
Задается ACM или драйвером, чтобы указать, что буферы поставлены в очередь для преобразования. |
|
Задается ACM, чтобы указать, что буферы были подготовлены с помощью функции acmStreamPrepareHeader . |
dwUser
Пользовательские данные. Это могут быть любые данные экземпляра, указанные приложением.
pbSrc
Указатель на исходный буфер. Этот указатель всегда должен ссылаться на одно и то же расположение, пока заголовок потока остается подготовленным. Если приложению необходимо изменить исходное расположение, оно должно отменить настройку заголовка и перенаправлять его с помощью альтернативного расположения.
cbSrcLength
Длина исходного буфера, на который указывает pbSrc, в байтах. При подготовке заголовка этот элемент должен указать максимальный размер, который будет использоваться в исходном буфере. Преобразования могут выполняться для исходной длины, меньшей или равной исходному подготовленному размеру. Однако этот элемент должен быть сброшен до исходного размера, когда приложение не подготовляет заголовок.
cbSrcLengthUsed
Объем данных в байтах, используемых для преобразования. Этот элемент будет недопустим до завершения преобразования. Это значение может быть меньше или равно cbSrcLength. Приложение должно использовать элемент cbSrcLengthUsed при переходе к следующему фрагменту исходных данных для потока преобразования.
dwSrcUser
Пользовательские данные. Это могут быть любые данные экземпляра, указанные приложением.
pbDst
Указатель на буфер назначения. Этот указатель всегда должен ссылаться на одно и то же расположение, пока заголовок потока остается подготовленным. Если приложению необходимо изменить целевое расположение, оно должно отменить настройку заголовка и перенаправлять его с помощью альтернативного расположения.
cbDstLength
Длина в байтах буфера назначения, на который указывает pbDst. При подготовке заголовка этот элемент должен указать максимальный размер, который будет использоваться в буфере назначения.
cbDstLengthUsed
Объем данных в байтах, возвращаемых преобразованием. Этот элемент будет недопустим до завершения преобразования. Это значение может быть меньше или равно cbDstLength. Приложение должно использовать элемент cbDstLengthUsed при переходе к следующему целевому расположению для потока преобразования.
dwDstUser
Пользовательские данные. Это могут быть любые данные экземпляра, указанные приложением.
dwReservedDriver[_DRVRESERVED]
Защищены; не использовать. Этот элемент не требует инициализации приложением и никогда не должен изменяться, пока заголовок остается готовым.
Комментарии
Перед использованием структуры ACMSTREAMHEADER для преобразования ее необходимо подготовить с помощью функции acmStreamPrepareHeader . После завершения работы приложения со структурой ACMSTREAMHEADER оно должно вызвать функцию acmStreamUnprepareHeader перед освобождением исходного и целевого буферов.
Требования
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Верхняя часть | msacm.h |
См. также раздел
Диспетчер сжатия аудио