## MMPM/2 Device Driver Reference

[prev][next][parent][TOC]

### SPCB Field - ulBlockSize

ulBlockSize (ULONG) This field can be interpreted in two ways. If the SPCBBUF_INTERLEAVED flag is set, then this field is interpreted as the size of the I/O read operation. This is used to request a read buffer of a smaller size than the ulBufSize field. The source stream handler will take the buffer of ulBufSize and break up the actual I/O reads into ulBlockSize chunks. If ulBlockSize is 1, then the ulBufSize is used as the default I/O read buffer size. Otherwise, ulBlockSize will be the I/O read buffer size. The ulBufSize value must be a multiple of the ulBlockSize value.

The second interpretation of this field is for non-interleaved streams, when the SPCBBUF_INTERLEAVED is not set. The ulBlockSize field represents the atom size of a data item. For example, for digital audio data type PCM 16-bit stereo at a 44.1KB sampling rate, the block size is 4 bytes.