Функция AVISaveA (vfw.h)
Функция AVISave создает файл путем объединения потоков данных из других файлов или из памяти.
Синтаксис
HRESULT AVISaveA(
LPCSTR szFile,
CLSID *pclsidHandler,
AVISAVECALLBACK lpfnCallback,
int nStreams,
PAVISTREAM pfile,
LPAVICOMPRESSOPTIONS lpOptions,
...
);
Параметры
szFile
Строка, завершающаяся значением NULL, содержащая имя файла для сохранения.
pclsidHandler
Указатель на обработчик файлов, используемый для записи файла. Файл создается путем вызова функции AVIFileOpen с помощью этого обработчика. Если обработчик не указан, по умолчанию выбирается из реестра на основе расширения файла.
lpfnCallback
Указатель на функцию обратного вызова для операции сохранения.
nStreams
Количество потоков, сохраненных в файле.
pfile
Указатель на поток AVI. Этот параметр связан с lpOptions. Пара параметров может повторяться в виде переменного числа аргументов.
lpOptions
Указатель на определяемую приложением структуру AVICOMPRESSOPTIONS, содержащую параметры сжатия потока, на который ссылается pavi. Этот параметр связан с pavi. Пара параметров может повторяться в виде переменного числа аргументов.
...
Возвращаемое значение
Возвращает AVIERR_OK, если успешно или ошибка в противном случае.
Замечания
Эта функция создает файл, копирует потоковые данные в файл, закрывает файл и освобождает ресурсы, используемые новым файлом. Последние два параметра этой функции определяют поток для сохранения в файле и определяют параметры сжатия этого потока. При сохранении нескольких потоков в AVI-файле повторите эти два параметра для каждого потока в файле.
Функция обратного вызова (на которую ссылается lpfnCallback) может отображать сведения о состоянии и позволить пользователю отменить операцию сохранения. Функция обратного вызова использует следующий формат:
LONG PASCAL SaveCallback(int nPercent)
Параметр nPercent указывает процент сохраненного файла.
Функция обратного вызова должна возвращать AVIERR_OK, если операция должна продолжаться и AVIERR_USERABORT, если пользователь хочет прервать операцию сохранения.
Аргумент pavi — это указатель на интерфейс IAVIStream.
Заметка
Заголовок vfw.h определяет AVISave как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 2000 Профессиональный [только классические приложения] |
минимальный поддерживаемый сервер | Windows 2000 Server [только классические приложения] |
целевая платформа | Виндоус |
заголовка | vfw.h |
библиотеки |
Vfw32.lib |
DLL | Avifil32.dll |