xref: /netbsd-src/usr.sbin/hdaudioctl/hdaudioctl.8 (revision 8feb0f0b7eaff0608f8350bbfa3098827b4bb91b)
1.\"	$NetBSD: hdaudioctl.8,v 1.8 2021/04/12 12:22:10 nia Exp $
2.\"
3.\" Copyright (c) 2009 Precedence Technologies Ltd <support@precedence.co.uk>
4.\" All rights reserved.
5.\"
6.\" This code is derived from software contributed to The NetBSD Foundation
7.\" by Precedence Technologies Ltd
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 April 12, 2021
31.Dt HDAUDIOCTL 8
32.Os
33.Sh NAME
34.Nm hdaudioctl
35.Nd program to manipulate
36.Xr hdaudio 4
37devices
38.Sh SYNOPSIS
39.Nm
40.Op Ar -f device
41.Ar command
42.Op Ar arguments
43.Sh DESCRIPTION
44The
45.Nm
46command can be used to inspect and reconfigure High Definition Audio devices
47and their child codecs.
48.Pp
49The mandatory
50.Ar command
51argument specifies the action to take.
52Valid commands are:
53.Bl -tag -width XgetXcodecidXnidX
54.It list
55For each child codec of the chosen
56.Xr hdaudio 4
57device, display the nid, vendor, product, subsystem and device IDs.
58.It show Ar codecid Ar nid
59Retrieve and display the current codec configuration in human-readable form.
60.It get Ar codecid Ar nid
61Retrieve and display the current codec configuration as a
62.Xr proplib 3
63XML plist.
64.It set Ar codecid Ar nid Op Ar plist
65Detach the specified
66.Xr hdafg 4
67codec and then re-attach with its widgets explicitly configured according to
68the specified plist.
69If no plist is given, the in-built widget parsing rules based on the High
70Definition Audio specification will be used.
71.It graph Ar codecid Ar nid
72Output a DOT file suitable processing by graphviz.
73The resulting image will graphically show the structure and interconnections
74of the widgets that form the chosen
75.Xr hdafg 4
76codec.
77.El
78.Sh FILES
79.Bl -tag -width /dev/hdaudioX -compact
80.It Pa /dev/hdaudioX
81control devices
82.El
83.Sh SEE ALSO
84.Xr audio 4 ,
85.Xr hdaudio 4 ,
86.Pa pkgsrc/graphics/graphviz
87.Sh HISTORY
88The
89.Nm
90command first appeared in
91.Nx 5.1 .
92.Sh AUTHORS
93.Nm
94is based on two separate programs written by
95.An Jared McNeill Aq Mt jmcneill@NetBSD.org
96under contract by
97.Lk http://www.precedence.co.uk/ Precedence Technologies Ltd .
98Integration into one program and writing this manual page was done by
99.An Stephen Borrill Aq Mt sborrill@NetBSD.org .
100.Sh CAVEATS
101When a plist is loaded and the
102.Xr hdafg 4
103codec reattaches, all mixer controls will be returned to their default values.
104