reactos/lib/drivers/sound/mmebuddy
Hermès Bélusca-Maïto b819608ed8 Create a branch for console restructuration work.
svn path=/branches/condrv_restructure/; revision=63104
2014-05-02 14:13:40 +00:00
..
auxiliary Create a branch for console restructuration work. 2014-05-02 14:13:40 +00:00
midi Create a branch for console restructuration work. 2014-05-02 14:13:40 +00:00
mixer Create a branch for console restructuration work. 2014-05-02 14:13:40 +00:00
wave Create a branch for console restructuration work. 2014-05-02 14:13:40 +00:00
capabilities.c Create a branch for console restructuration work. 2014-05-02 14:13:40 +00:00
CMakeLists.txt Create a branch for console restructuration work. 2014-05-02 14:13:40 +00:00
deviceinstance.c Create a branch for console restructuration work. 2014-05-02 14:13:40 +00:00
devicelist.c Create a branch for console restructuration work. 2014-05-02 14:13:40 +00:00
functiontable.c Create a branch for console restructuration work. 2014-05-02 14:13:40 +00:00
kernel.c Create a branch for console restructuration work. 2014-05-02 14:13:40 +00:00
mmewrap.c Create a branch for console restructuration work. 2014-05-02 14:13:40 +00:00
precomp.h Create a branch for console restructuration work. 2014-05-02 14:13:40 +00:00
readme.txt Create a branch for console restructuration work. 2014-05-02 14:13:40 +00:00
reentrancy.c Create a branch for console restructuration work. 2014-05-02 14:13:40 +00:00
thread.c Create a branch for console restructuration work. 2014-05-02 14:13:40 +00:00
utility.c Create a branch for console restructuration work. 2014-05-02 14:13:40 +00:00

MME BUDDY

This library currently is capable of maintaining lists of devices for all of
the MME types, it will provide the appropriate entrypoints for each device
type, and code using this library simply needs to inform the MME Buddy
library of the devices that exist, and provide callback routines to be used
when opening/closing/playing, etc.

Code using this library needs to provide its own DriverProc entrypoint (this
may be refactored in future so that simply an init/cleanup routine need be
provided.)


WAVE OUTPUT
===========
Supported MME messages:
* WODM_GETNUMDEVS (Get number of devices)
* WODM_GETDEVCAPS (Get device capabilities)
* WODM_OPEN (Open a device, query supported formats)
* WODM_CLOSE (Close a device)
* WODM_PREPARE (Prepare a wave header)
* WODM_UNPREPARE (Unprepare a wave header)
* WODM_WRITE (Submit a prepared header to be played)

Unsupported MME messages:
* Any not mentioned above

Notes/Bugs:
* WHDR_BEGINLOOP and WHDR_ENDLOOP are ignored
* Not possible to pause/restart playback


WAVE INPUT
==========
Supported MME messages:
* WIDM_GETNUMDEVS (Get number of devices)

Unsupported MME messages:
* Any not mentioned above

Notes/Bugs:
* Mostly unimplemented


MIDI OUTPUT
===========
Supported MME messages:
* MODM_GETNUMDEVS (Get number of devices)

Unsupported MME messages:
* Any not mentioned above

Notes/Bugs:
* Mostly unimplemented


MIDI INPUT
==========
Supported MME messages:
* MIDM_GETNUMDEVS (Get number of devices)

Unsupported MME messages:
* Any not mentioned above

Notes/Bugs:
* Mostly unimplemented


AUXILIARY
=========
Supported MME messages:
* AUXM_GETNUMDEVS (Get number of devices)

Unsupported MME messages:
* Any not mentioned above

Notes/Bugs:
* Mostly unimplemented


MIXER
=====
Supported MME messages:
* MXDM_GETNUMDEVS (Get number of devices)

Unsupported MME messages:
* Any not mentioned above

Notes/Bugs:
* Mostly unimplemented