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