home *** CD-ROM | disk | FTP | other *** search
-
- +---------------------+ +----------------------+ +--------------+
- | Sound Object hander | | Faked 'audio.device' | | Applications |
- +---------------------+ +----------------------+ +--------------+
- | | |
- | +--------------------------+ |
- | | +---------------+------------------------------+
- | | | |
- V V V V
- +-----------------------------+
- | <commands> <functions> |
- | ahi.device |
- +-----------------------------+
- | | |
- +--+ | +---------------------------+
- | +------------+ |
- V V V
- +-----------------+ +---------------+ +-------------------+
- | ahi/paula.audio | | ahi/gus.audio | | ahi/toccata.audio | etc...
- +-----------------+ +---------------+ +-------------------+
-
- Level 1: Standard device interface (commands)
-
- o Allows applications to share the resources, with
- priorities etc.
- o Could even use multiply libraries on a soundcard
- equipped system, to allow both the native hardware
- and the card to be used.
- o The user (not the application programmer) could select
- desired library (libraries), resolution (8/12/16 bit),
- mixing frequency, number of channels etc...
-
-
- Level 2: Library-like device interface (functions)
-
- o The device has library-like functions ala timer.device,
- which are available to the low-level user.
- o Contains mixing functions, perhaps sample
- conversion and (de)crunch functions etc.
- o For all programs that talks to the hardware today (and has a
- good reason to do so), like composer programs and module
- players.
-
- Level 3: Sound card drivers
-
- o The drivers are libraries.
- o Only one owner at time.
- o Can either just send a mixed audio stream to the sound card,
- or chose to preform the mixing itself, perhaps with its own
- DSP.
-