The region list chunk in the Downloadable Sounds (DLS) file is a collection of region chunks. In DLS, a region chunk contains directions to a wave sample and instructions about how that wave sample should be played. The region list chunk is a LIST chunk as defined in the RIFF specifications, with the LIST type "lrgn" defined in the DLS specifications.
The region list chunk has the following structure.
|Byte sequence description||Length in bytes||Starts with byte in the chunk||Value|
|chunk ID||4||0x00||The ASCII character string "LIST"|
|size||4||0x04||The size of the sub-chunk less 8 (less the "chunk ID" and the "size") (an unsigned integer)|
|list type ID||4||0x08||The ASCII character string "lrgn"|
|data||various||0x0C||Several region chunks (with chunk ID "rgn " as defined in the DLS specifications)|
A single region list chunk is contained within an instrument chunk. Each region in the region list points to a wave sample that should be played for that instrument (e.g., a piano), specifies when the wave sample should be played (for what notes and velocities on that instrument), and specifies how the wave sample should be played (e,g., with what sustain, low frequency oscillation, and so on). The instrument header chunk within the instrument chunk shows how many regions are in the region list. Per the DLS specifications, a melodic DLS instrument such as a piano can have at most 16 regions and a percussive DLS instrument such as a drum set can have at most 128 regions.
Donwloadable Sounds (DLS) format, Region chunk (of a DLS file)
Add new comment