xref: /freebsd/share/man/man4/snd_uaudio.4 (revision a4e5e0106ac7145f56eb39a691e302cabb4635be)
1.\" $NetBSD: uaudio.4,v 1.15 2002/02/12 19:53:57 jdolecek Exp $
2.\"
3.\" Copyright (c) 1999 The NetBSD Foundation, Inc.
4.\" All rights reserved.
5.\"
6.\" This code is derived from software contributed to The NetBSD Foundation
7.\" by Lennart Augustsson.
8.\"
9.\" Redistribution and use in source and binary forms, with or without
10.\" modification, are permitted provided that the following conditions
11.\" are met:
12.\" 1. Redistributions of source code must retain the above copyright
13.\"    notice, this list of conditions and the following disclaimer.
14.\" 2. Redistributions in binary form must reproduce the above copyright
15.\"    notice, this list of conditions and the following disclaimer in the
16.\"    documentation and/or other materials provided with the distribution.
17.\"
18.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
19.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
20.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
21.\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
22.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28.\" POSSIBILITY OF SUCH DAMAGE.
29.\"
30.Dd November 12, 2016
31.Dt SND_UAUDIO 4
32.Os
33.Sh NAME
34.Nm snd_uaudio
35.Nd USB audio and MIDI device driver
36.Sh SYNOPSIS
37To compile this driver into the kernel, place the following lines in your
38kernel configuration file:
39.Bd -ragged -offset indent
40.Cd "device sound"
41.Cd "device usb"
42.Cd "device snd_uaudio"
43.Ed
44.Pp
45Alternatively, to load the driver as a module at boot time, place the
46following line in
47.Xr loader.conf 5 :
48.Bd -literal -offset indent
49snd_uaudio_load="YES"
50.Ed
51.Sh DESCRIPTION
52The
53.Nm
54driver provides support for
55.Tn USB
56audio class devices and
57.Tn USB
58MIDI class devices.
59.Pp
60A
61.Tn USB
62audio device consists of a number of components:
63input terminals (e.g.\& USB digital input), output terminals (e.g.\&
64speakers), and a number of units in between (e.g.\& volume control).
65.Pp
66Refer to the
67.Ql USB Audio Class Specification
68for more information.
69.Sh SEE ALSO
70.Xr sound 4 ,
71.Xr usb 4
72.Rs
73.%T "USB Audio Class Specifications"
74.%U http://www.usb.org/developers/docs/devclass_docs/
75.Re
76.Sh HISTORY
77The
78.Nm
79driver first appeared in
80.Fx 4.7 .
81.Sh AUTHORS
82This manual page was adopted from
83.Nx 1.6
84and modified for
85.Fx
86by
87.An Hiten Pandya Aq Mt hmp@FreeBSD.org .
88.Sh BUGS
89The
90.Tn PCM
91framework in
92.Fx
93only supports synchronous device detach.
94That means all mixer and DSP character devices belonging to a given
95USB audio device must be closed when receiving an error on a DSP read,
96a DSP write or a DSP IOCTL request.
97Else the USB audio driver will wait for this to happen, preventing
98enumeration of new devices on the parenting USB controller.
99.Pp
100Some USB audio devices might refuse to work properly unless the sample
101rate is configured the same for both recording and playback, even if
102only simplex is used.
103See the
104.Va dev.pcm.%d.[play|rec].vchanrate
105sysctls.
106.Pp
107The
108.Tn PCM
109framework in
110.Fx
111currently doesn't support the full set of USB audio mixer
112controls.
113Some mixer controls are only available as
114.Va dev.pcm.%d.mixer
115sysctls.
116