Annotation of src/usr.bin/mixerctl/mixerctl.1, Revision 1.28
1.28 ! sobrado 1: .\" $OpenBSD: mixerctl.1,v 1.27 2007/05/31 19:20:13 jmc Exp $
1.6 provos 2: .\" $NetBSD: mixerctl.1,v 1.8 1998/05/09 12:41:16 augustss Exp $
1.5 millert 3: .\"
1.1 provos 4: .\" Copyright (c) 1997 The NetBSD Foundation, Inc.
5: .\" All rights reserved.
6: .\"
7: .\" Author: 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: .\" 3. All advertising materials mentioning features or use of this software
18: .\" must display the following acknowledgement:
19: .\" This product includes software developed by the NetBSD
20: .\" Foundation, Inc. and its contributors.
21: .\" 4. Neither the name of The NetBSD Foundation nor the names of its
22: .\" contributors may be used to endorse or promote products derived
23: .\" from this software without specific prior written permission.
24: .\"
25: .\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
26: .\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
27: .\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
1.6 provos 28: .\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
1.1 provos 29: .\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
30: .\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
31: .\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
32: .\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
33: .\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
34: .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
35: .\" POSSIBILITY OF SUCH DAMAGE.
36: .\"
1.28 ! sobrado 37: .Dd $Mdocdate: May 31 2007 $
1.1 provos 38: .Dt MIXERCTL 1
39: .Os
40: .Sh NAME
41: .Nm mixerctl
42: .Nd control audio mixing
43: .Sh SYNOPSIS
1.9 aaron 44: .Nm mixerctl
1.19 jmc 45: .Op Fl nv
1.1 provos 46: .Op Fl f Ar file
47: .Fl a
1.9 aaron 48: .Nm mixerctl
1.19 jmc 49: .Op Fl nv
1.1 provos 50: .Op Fl f Ar file
1.28 ! sobrado 51: .Ar name ...
1.9 aaron 52: .Nm mixerctl
1.23 deraadt 53: .Op Fl qt
54: .Op Fl f Ar file
1.28 ! sobrado 55: .Ar name ...
1.23 deraadt 56: .Nm mixerctl
1.17 jfb 57: .Op Fl q
1.19 jmc 58: .Pf \ \& Op Fl f Ar file
59: .Xo
1.28 ! sobrado 60: .Ar name Ns = Ns Ar value ...
1.19 jmc 61: .Xc
1.1 provos 62: .Sh DESCRIPTION
1.6 provos 63: The
1.1 provos 64: .Nm
65: command displays or sets various audio system mixing variables.
1.10 aaron 66: If a list of variables is present on the command line,
1.1 provos 67: .Nm
68: prints the current value of those variables for the specified device.
1.10 aaron 69: By default,
1.1 provos 70: .Nm
1.10 aaron 71: operates on the
72: .Pa /dev/mixer
73: device.
74: .Pp
75: The options are as follows:
1.19 jmc 76: .Bl -tag -width "-f file"
1.10 aaron 77: .It Fl a
78: Print all device variables and their current values.
1.15 pvalchev 79: .It Fl f Ar file
80: Specify an alternative audio mixing device.
81: .It Fl n
82: Suppress printing of the variable name.
1.17 jfb 83: .It Fl q
84: Suppress all printing when setting a variable.
1.23 deraadt 85: .It Fl t
1.25 jmc 86: Toggle.
87: Attempt to select the next possible value
88: of an enum
89: (see below).
1.10 aaron 90: .It Fl v
1.25 jmc 91: Show all possible values of variables.
92: Enum values are shown in
93: .Sq []
94: and values belonging to a set are shown in
95: .Sq {}
96: (see below).
1.20 tedu 97: .It Ar name Ns = Ns Ar value
1.19 jmc 98: Attempt to set the specified variable
1.15 pvalchev 99: .Ar name
100: to
101: .Ar value .
1.10 aaron 102: .El
1.5 millert 103: .Pp
1.10 aaron 104: The exact set of controls that can be manipulated depends on
105: the mixer.
1.25 jmc 106: The general format (in both getting and setting a value) is:
1.1 provos 107: .Pp
1.19 jmc 108: .D1 class.name=value
1.6 provos 109: .Pp
110: The
1.19 jmc 111: .Ar class
1.6 provos 112: can have values like
1.25 jmc 113: .Dq inputs
1.6 provos 114: or
1.25 jmc 115: .Dq outputs ,
1.19 jmc 116: indicating that the control affects the input or output, respectively,
117: to the mixer.
1.10 aaron 118: The
1.19 jmc 119: .Ar name
1.6 provos 120: indicates what part of the mixer the control affects.
1.25 jmc 121: Continuous mixer values, e.g. volume,
122: have numeric values in the range 0\-255.
1.19 jmc 123: If
124: .Ar value
125: can be set for each channel independently,
1.10 aaron 126: the values are printed separated by commas.
1.25 jmc 127: Discrete mixer values, e.g. the recording source,
128: have symbolic names.
129: .Pp
130: Variables may take one of three types,
131: again dependent on the mixer:
132: .Bl -enum
133: .It
134: Enums.
1.26 jmc 135: These may take only one out of a possible list of symbolic values
136: or the literal string
137: .Dq toggle ,
138: which toggles the value,
1.25 jmc 139: e.g. inputs.mic.source=mic0.
140: .It
141: Sets.
142: These can take one or more of a possible list of symbolic values;
143: multiple values are specified as a comma-separated list,
144: e.g. record.source=mic,cd.
145: Additionally,
146: .Ar value
147: may be omitted to specify the empty set,
148: e.g. record.source=.
149: .It
150: Numbers.
151: Numerical values may be specified in either absolute or relative forms.
152: The relative form is indicated by a prefix of
153: .Ql +
154: or
155: .Ql -
156: to denote an increase or decrease, respectively.
157: .El
1.18 jmc 158: .Sh ENVIRONMENT
159: .Bl -tag -width MIXERDEVICE
160: .It Ev MIXERDEVICE
161: The audio mixer device to use.
162: .El
163: .Sh FILES
164: .Bl -tag -width /dev/mixer
165: .It Pa /dev/mixer
166: default mixer audio device
167: .El
1.6 provos 168: .Sh EXAMPLES
1.25 jmc 169: Show possible values for all mixer variables,
170: and their current settings:
1.19 jmc 171: .Bd -literal -offset indent
1.25 jmc 172: $ mixerctl -av
1.6 provos 173: inputs.mic=0,0 volume
174: inputs.mic.mute=off [ off on ]
175: inputs.cd=220,220 volume
176: inputs.cd.mute=off [ off on ]
177: inputs.dac=220,220 volume
178: inputs.dac.mute=off [ off on ]
179: record.record=220,220 volume
180: record.record.source=mic [ mic cd dac ]
181: monitor.monitor=0 volume
1.23 deraadt 182: .Ed
183: .Pp
1.25 jmc 184: Toggle inputs.dac.mute:
1.23 deraadt 185: .Bd -literal -offset indent
1.25 jmc 186: $ mixerctl -t inputs.dac.mute
187: inputs.dac.mute: off -\*(Gt on
1.26 jmc 188: $ mixerctl inputs.dac.mute=toggle
189: inputs.dac.mute: on -\*(Gt off
1.6 provos 190: .Ed
1.1 provos 191: .Sh SEE ALSO
1.21 jmc 192: .Xr aucat 1 ,
1.1 provos 193: .Xr audioctl 1 ,
1.21 jmc 194: .Xr cdio 1 ,
1.1 provos 195: .Xr audio 4 ,
1.22 jsg 196: .Xr mixerctl.conf 5 ,
1.1 provos 197: .Xr sysctl 8
198: .Sh HISTORY
199: The
200: .Nm
201: command first appeared in
1.25 jmc 202: .Ox 2.4 .