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


Метод IAVIStream::Read (vfw.h)

Метод Read считывает данные из потока и копирует их в буфер, определяемый приложением. Если буфер не указан, он определяет размер буфера, необходимый для получения следующего буфера данных. Вызывается, когда приложение использует функцию AVIStreamRead .

Синтаксис

HRESULT Read(
  LONG   lStart,
  LONG   lSamples,
  LPVOID lpBuffer,
  LONG   cbBuffer,
  LONG   *plBytes,
  LONG   *plSamples
);

Параметры

lStart

Начальная выборка или номер кадра для чтения.

lSamples

Число считываемых выборок.

lpBuffer

Указатель на определяемый приложением буфер, содержащий потоковые данные. Можно также указать ЗНАЧЕНИЕ NULL , чтобы запросить требуемый размер буфера. Многие приложения предшествуют каждой операции чтения с запросом размера буфера, чтобы узнать, какой размер буфера требуется.

cbBuffer

Размер буфера, заданного lpBuffer, в байтах.

plBytes

Указатель на буфер, который получает количество прочитанных байтов.

plSamples

Указатель на буфер, который получает количество считываемых выборок.

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

Возвращает AVIERR_OK в случае успешного выполнения или AVIERR_BUFFERTOOSMALL, если буфер недостаточно велик для хранения данных. В случае успешного выполнения функция Read также возвращает буфер данных с количеством кадров (выборок), включенных в буфер, или требуемым размером буфера в байтах.

Комментарии

Для обработчиков, написанных на C++, read имеет следующий синтаксис:


HRESULT Read(LONG lStart, LONG lSamples, 
    LPVOID lpBuffer, LONG cbBuffer, 
    LONG *plBytes, LONG *plSamples); 
 

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header vfw.h
Библиотека Vfw32.lib

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

Пользовательские интерфейсы обработчика файлов и потоков

Пользовательские обработчики файлов и потоков