                              Wine Documentation                               
Prev                    Chapter 13. Wine and Multimedia                    Next
-------------------------------------------------------------------------------

13.5. Multimedia configuration

Currently, multimedia configuration heavily relies on Win 3.x configuration
model.

13.5.1. Drivers

Since all multimedia drivers (MCI, low level ones, ACM drivers, mappers) are,
at first, drivers they need to appear in the [mci] or [mci32] section of the
system.ini file. Since all drivers are, at first, DLLs, you can choose to load
their Wine's (built-in) or Windows (native) version.

13.5.2. MCI

A default [mci] section (in system.ini) looks like (see the note above on
videodisc):

   [mci]
   cdaudio=mcicda.drv
   sequencer=mciseq.drv
   waveaudio=mciwave.drv
   avivideo=mciavi.drv
   videodisc=mcipionr.drv
   vcr=mcivisca.drv
   MPEGVideo=mciqtz.drv
        

By default, the list of loadable MCI drivers will be made of those drivers (in
the [mci] section).

The list of loadable (recognized) MCI drivers can be altered in the [option]
section of wine.conf, like: mci=CDAUDIO:SEQUENCER:WAVEAUDIO:AVIVIDEO:MPEGVIDEO

TODO:

  * use a default registry setting to bypass this (ugly) configuration model
   
13.5.3. Low level drivers

Configuration of low level drivers is done with the Wine configuration file.
Default keys are provided in winedefault.reg.

The registry keys used here differ from the Windows' one. Using the Windows'
one would require implementing something equivalent to a (real) driver
installation. Even if this would be necessary in a few cases (mainly using MS
native multimedia) modules, there's no real need so far (or it hasn't been run
into yet).

See the configuration part of the User's Guide for more details.

13.5.4. Midi mapper

The Midi mapper configuration is the same as on Windows 9x. Under the key
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Multimedia\MIDIMap
          
if the 'UseScheme' value is not set, or is set to a null value, the midi mapper
will always use the driver identified by the 'CurrentInstrument' value. Note:
Wine (for simplicity while installing) allows to define 'CurrentInstrument' as
"#n" (where n is a number), whereas Windows only allows the real device name
here. If UseScheme is set to a non null value, 'CurrentScheme' defines the name
of the scheme to map the different channels. All the schemes are available with
keys like
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\MediaProperties\PrivateProperties\Midi\Schemes\%name_of_scheme%
          
For every scheme, under this key, will be a sub-key (which name is usually a
two digit index, starting at 00). Its default value is the name of the output
driver, and the value 'Channels' lists all channels (of the 16 standard MIDI
ones) which have to be copied to this driver.

To provide enhanced configuration and mapping capabilities, each driver can
define under the key
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\MediaProperties\PrivateProperties\Midi\Ports\%driver_name%
          
a link to and .IDF file which allows to remap channels internally (for example
9 -> 16), to change instruments identification, event controlers values. See
the source file dlls/winmm/midimap/midimap.c for the details (this isn't
implemented yet).

13.5.5. ACM

To be done (use the same mechanism as MCI drivers configuration).

13.5.6. VIDC

To be done (use the same mechanism as MCI drivers configuration).

-------------------------------------------------------------------------------
Prev                                 Home                                  Next
High level layers                     Up                Multimedia architecture
