Chapter 12. Wine and Multimedia

Table of Contents
12.1. Overview
12.2. Low level layers
12.3. Mid level drivers (MCI)
12.4. High level layers
12.5. Multimedia configuration
12.6. Multimedia architecture
12.7. MS ACM Dlls

This file contains information about the implementation of the multimedia layer of Wine.

The implementation can be found in the dlls/winmm/ directory (and in many of its subdirectories), but also in dlls/msacm/ (for the audio compression/decompression manager) and dlls/msvideo/ (for the video compression/decompression manager).

12.1. Overview

The multimedia stuff is split into 3 layers. The low level (device drivers), mid level (MCI commands) and high level abstraction layers. The low level layer has also some helper DLLs (like the MSACM/MSACM32 and MSVIDEO/MSVFW32 pairs).

The low level layer may depend on current hardware and OS services (like OSS on Unix). Mid level (MCI) and high level layers must be written independently from the hardware and OS services.

There are two specific low level drivers (msacm.drv for wave input/output, midimap.drv for MIDI output only), whose role is:

All of those components are defined as DLLs (one by one).