ENVY(4)                   OpenBSD Programmer's Manual                  ENVY(4)

NAME
     envy - VIA Envy24 audio device

SYNOPSIS
     envy* at pci?
     audio* at envy?

DESCRIPTION
     The envy driver supports sound cards based on VIA Envy24 and Envy24HT PCI
     chips.  The following sound cards are currently supported:

           o   M-Audio Delta 1010, 1010LT, 66 and 44
           o   M-Audio Audiophile 2496
           o   M-Audio Revolution 5.1
           o   ESI Julia
           o   VIA Tremor 5.1

   Mixer device
     The chip features a digital mixer that routes and mixes the streams below
     as follows:

     inputs    There are 8 streams corresponding to data received by the de-
               vice from the codecs.  They are labelled line0 - line7 in the
               mixer(4) interface.

     outputs   There are 8 streams corresponding to data sent by the device to
               the codecs.  They are labelled line0 - line7.  Each of them can
               be individually configured to use any of the external inputs or
               its corresponding playback stream as source.  Additionally,
               outputs line0 and line1 can be configured to use mon0 or mon1
               as sources.

     monitor   There are 2 streams that can be configured to contain any lin-
               ear superposition of any of the 10 playback and 10 external in-
               put streams.  They are labelled mon0 and mon1.  From the mix-
               er's point of view they are input streams, so they can be used
               as sources of output streams.  This feature is specific to En-
               vy24 based cards.

     playback  There are 10 streams corresponding to samples transferred from
               the host to the device.  They are labelled play0 - play9.  From
               the mixer's point of view they are input streams, so they are
               usable as sources of output streams.

     record    There are 12 streams corresponding to samples transferred from
               the device to the host.  They are not controllable by the mix-
               er.  Streams 0 to 7 are hardwired to external inputs line0 -
               line7 and streams 10 and 11 are hardwired to mon0 and mon1.

   Playback and record data formats
     Both playback and record use linear encoding.  Samples are represented by
     32-bit signed numbers in little endian order.  Only the first 24 most
     significant bits are used.  On Envy24-based cards, playback uses 10 chan-
     nels and record uses 12 channels, while on Envy24HT-based cards the num-
     ber of streams depend on the number of codecs physically present on the
     card.

SEE ALSO
     audio(4), intro(4), pci(4)

HISTORY
     The envy driver first appeared in OpenBSD 4.3.

BUGS
     MIDI and S/PDIF transmitter/receivers are not yet supported.

     Ring buffer sizes are limited to 64kB, which can be limiting at high sam-
     ple rates.

OpenBSD 4.7                      March 7, 2010                               2
