Update 2024-02-14 07:51 OpenBSD/amd64-x13
This commit is contained in:
39
.bin/OLD/setaudio
Executable file
39
.bin/OLD/setaudio
Executable file
@@ -0,0 +1,39 @@
|
||||
#!/bin/ksh
|
||||
|
||||
# set the sound device via argument (if you put something stupid her, so be it...)
|
||||
[ ! -z $1 ] && sndioctl -q server.device=$1
|
||||
|
||||
# we need it a few times, and caching is faster
|
||||
DUMP=$(dmesg)
|
||||
|
||||
# save the current active sound device
|
||||
_cur=$(sndioctl -n server.device)
|
||||
|
||||
# starting from dev 4, you need to cd /dev && sh MAKEDEV audioX
|
||||
for i in 0 1 2 3 4 5 6
|
||||
do
|
||||
# find audio attach and detach lines
|
||||
_input="$(echo "$DUMP" | grep -E "^audio$i\ at.*|^audio$i detached" | tail -n 1)"
|
||||
|
||||
# if the last match is a detached line, stop here
|
||||
echo "$_input" | grep -q "detached" && continue
|
||||
|
||||
# take the number from audioX, then grep for what's attached to find
|
||||
# the last description for this device (usb devices may change order
|
||||
# during runtime)
|
||||
|
||||
_type=$(echo "$_input" | cut -d" " -f3)
|
||||
_number=$(echo "$_input" | cut -d" " -f1 | sed 's/[a-z]//g')
|
||||
_desc=$(echo "$DUMP" | grep -E "^$_type at.*" | tail -1 | cut -d'"' -f2)
|
||||
|
||||
# Once we walked to the first non-existing device, we stop.
|
||||
[ -z $_number ] && exit 0
|
||||
|
||||
# Show the device list and mark the current one
|
||||
if [ $_cur -eq $_number ]
|
||||
then
|
||||
echo "> $_number: $_desc"
|
||||
else
|
||||
echo " $_number: $_desc"
|
||||
fi
|
||||
done
|
||||
Reference in New Issue
Block a user