AVIStreamRead

The AVIStreamRead function reads audio, video or other data from a stream according to the stream type.

STDAPI AVIStreamRead(
  PAVISTREAM pavi, 
  LONG lStart,     
  LONG lSamples,   
  LPVOID lpBuffer, 
  LONG cbBuffer,   
  LONG * plBytes,  
  LONG * plSamples 
);
 

Parameters

pavi
Handle of an open stream.
lStart
First sample to read.
lSamples
Number of samples to read. You can also specify the value AVISTREAMREAD_CONVENIENT to let the stream handler determine the number of samples to read.
lpBuffer
Address of a buffer to contain the data.
cbBuffer
Size, in bytes, of the buffer pointed to by lpBuffer.
plBytes
Address to contain the number of bytes of data written in the buffer referenced by lpBuffer. This value can be NULL.
plSamples
Address to contain the number of samples written in the buffer referenced by lpBuffer. This value can be NULL.

Return Values

Returns zero if successful or an error otherwise. Possible error values include the following:

Value Description
AVIERR_BUFFERTOOSMALL The buffer size cbBuffer was smaller than a single sample of data.
AVIERR_MEMORY There was not enough memory to complete the read operation.
AVIERR_FILEREAD A disk error occurred while reading the file.

Remarks

If lpBuffer is NULL, this function does not read any data; it returns information about the size of data that would be read.

QuickInfo

  Windows NT: Requires version 3.1 or later.
  Windows: Requires Windows 95 or later.
  Windows CE: Unsupported.
  Header: Declared in vfw.h.
  Import Library: Use vfw32.lib.

See Also

AVIFile Functions and Macros Overview, AVIFile Functions