Digital Sound & Music Interface
Written by Julien Pierre
Introduction
Typically, the audio capabilities of multimedia applications are restricted by hardware. The Digital Sound & Music Interface (DSMI) for OS/2 changes all that.
What DSMI Offers
DSMI was created to overcome the limitations of the sound hardware and let programmers access a greater number of channels. DSMI allows you to use up to 32 PCM channels simultaneously, even if your hardware has only one channel.
DSMI also offers APIs to load the music "module" files. Modules are conceptually similar to Musical Instrument Digital Interface (MIDI) files, in that they contain a full song with the list of its notes, duration, effects, and other information. But unlike MIDI files, which are limited to the sounds your MIDI synthesizer offers, module files also contain information about each "instrument", stored as PCM samples. That means you can use any sound you record from your sound card as an instrument in the song - such as your voice. For this reason, and because of the limitations of the MIDI hardware found on most PC sound cards, modules typically sound much better than MIDI.
How DSMI Works
DSMI has several layers:
- Application
- Advanced Module Player
- Channel Distributor Interface
- Multi Channel Player
- Dynamic Driver System
- Sound Device Interface
This section briefly describes all of these layers except for the application layer. A typical DSMI application uses the Advanced Module Player and/or the Channel Distributor Interface.