xref: /openbsd/share/man/man4/envy.4 (revision 404b540a)
1.\" $OpenBSD: envy.4,v 1.6 2009/05/08 19:03:55 ratchov Exp $
2.\"
3.\" Copyright (c) 2007 Alexandre Ratchov <alex@caoua.org>
4.\"
5.\" Permission to use, copy, modify, and distribute this software for any
6.\" purpose with or without fee is hereby granted, provided that the above
7.\" copyright notice and this permission notice appear in all copies.
8.\"
9.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16.\"
17.Dd $Mdocdate: May 8 2009 $
18.Dt ENVY 4
19.Os
20.Sh NAME
21.Nm envy
22.Nd VIA Envy24 audio device
23.Sh SYNOPSIS
24.Cd "envy* at pci?"
25.Cd "audio* at envy?"
26.Sh DESCRIPTION
27The
28.Nm
29driver supports sound cards based on VIA Envy24 and Envy24HT PCI chips.
30The following sound cards are currently supported:
31.Pp
32.Bl -bullet -compact -offset indent
33.It
34M-Audio Delta 1010, 1010LT, 66 and 44
35.It
36ESI Julia
37.El
38.Ss Mixer device
39The chip features a digital mixer that routes and mixes the
40streams below as follows:
41.Bl -tag -width playback
42.It Dv inputs
43There are 8 streams corresponding to data received by the
44device from the codecs.
45They are labelled
46.Va line0
47\(en
48.Va line7
49in the
50.Xr mixer 4
51interface.
52.It Dv outputs
53There are 8 streams corresponding to data sent by the device to the codecs.
54They are labelled
55.Va line0
56\(en
57.Va line7 .
58Each of them can be individually configured to use any of
59the external inputs or its corresponding playback stream as source.
60Additionally, outputs
61.Va line0
62and
63.Va line1
64can be configured to use
65.Va mon0
66or
67.Va mon1
68as sources.
69.It Dv monitor
70There are 2 streams that can be configured to contain any linear
71superposition of any of the 10 playback and 10 external input streams.
72They are labelled
73.Va mon0
74and
75.Va mon1 .
76From the mixer's point of view they are input streams,
77so they can be used as sources of output streams.
78This feature is specific to Envy24 based cards.
79.It Dv playback
80There are 10 streams corresponding to samples transferred
81from the host to the device.
82They are labelled
83.Va play0
84\(en
85.Va play9 .
86From the mixer's point of view they are input streams,
87so they are usable as sources of output streams.
88.It Dv record
89There are 12 streams corresponding to samples transferred
90from the device to the host.
91They are not controllable by the mixer.
92Streams 0 to 7 are hardwired to external inputs
93.Va line0
94\(en
95.Va line7
96and streams 10 and 11 are hardwired to
97.Va mon0
98and
99.Va mon1 .
100.El
101.Ss Playback and record data formats
102Both playback and record use linear encoding.
103Samples are represented by 32-bit signed numbers in little endian order.
104Only the first 24 most significant bits are used.
105On Envy24-based cards, playback uses 10 channels and record uses 12 channels,
106while on Envy24HT-based cards the number of streams depend on the
107number of codecs physically present on the card.
108.Sh SEE ALSO
109.Xr audio 4 ,
110.Xr intro 4 ,
111.Xr pci 4
112.Sh HISTORY
113The
114.Nm
115driver first appeared in
116.Ox 4.3 .
117.Sh BUGS
118MIDI and S/PDIF transmitter/receivers are not yet supported.
119.Pp
120The current
121.Xr audio 4
122driver doesn't allow playback and record blocks to have the same duration,
123making the device hardly usable for block based I/O in full-duplex.
124Playback and capture cannot be started atomically.
125Ring buffer sizes are limited to 64kB,
126which can be limiting at high sample rates.
127