From c885d261a60ff9e9c3f53f3a004954256a49d43c Mon Sep 17 00:00:00 2001 From: Ole Tange Date: Tue, 13 Jun 2017 20:11:34 +0200 Subject: [PATCH] sound-reload: Reload sound system --- Makefile | 7 ++-- README | 4 ++ sound-reload/sound-reload | 78 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 86 insertions(+), 3 deletions(-) create mode 100755 sound-reload/sound-reload diff --git a/Makefile b/Makefile index 2c83057..ec3fccd 100644 --- a/Makefile +++ b/Makefile @@ -1,8 +1,9 @@ CMD = blink bsearch em encdir field forever G gitnext goodpasswd \ -histogram neno pdfman puniq ramusage rand rclean rn rrm stdout T \ -timestamp tracefile upsidedown w4it-for-port-open wifi-reload wssh +histogram neno pdfman puniq ramusage rand rclean rn rrm sound-reload \ +stdout T timestamp tracefile upsidedown w4it-for-port-open \ +wifi-reload wssh -all: blink/blink.1 bsearch/bsearch.1 encdir/encdir.1 G/G.1 gitnext/gitnext.1 goodpasswd/goodpasswd.1 histogram/histogram.1 neno/neno.1 pdfman/pdfman.1 puniq/puniq.1 rand/rand.1 rn/rn.1 rrm/rrm.1 stdout/stdout.1 timestamp/timestamp.1 tracefile/tracefile.1 T/T.1 upsidedown/upsidedown.1 wifi-reload/wifi-reload.1 wssh/wssh.1 +all: blink/blink.1 bsearch/bsearch.1 encdir/encdir.1 G/G.1 gitnext/gitnext.1 goodpasswd/goodpasswd.1 histogram/histogram.1 neno/neno.1 pdfman/pdfman.1 puniq/puniq.1 rand/rand.1 rn/rn.1 rrm/rrm.1 sound-reload/sound-reload.1 stdout/stdout.1 timestamp/timestamp.1 tracefile/tracefile.1 T/T.1 upsidedown/upsidedown.1 wifi-reload/wifi-reload.1 wssh/wssh.1 %.1: % pod2man $< > $@ diff --git a/README b/README index 783bbd3..0a0afa7 100644 --- a/README +++ b/README @@ -36,6 +36,8 @@ rn - Move file(s)/dir(s) to .rm/ (wastebasket). rrm - Record file's MD5 sum before removing it. +sound-reload - Reload sound system + stdout - Redirect both STDERR and STDOUT to STDOUT. T - tee stdout to and from temporary files. @@ -50,4 +52,6 @@ w4it-for-port-open - Block until the given port opens on a given host. wastebasket - VLC extension for moving current file to a wastebasket +wifi-reload - Reload wifi drivers + wssh - Shorthand for w4it-for-port-open $host 22; ssh $host diff --git a/sound-reload/sound-reload b/sound-reload/sound-reload new file mode 100755 index 0000000..27568f3 --- /dev/null +++ b/sound-reload/sound-reload @@ -0,0 +1,78 @@ +#!/bin/bash + +: <<=cut +=encoding utf8 + +=head1 NAME + +sound-reload - reload sound setup + + +=head1 SYNOPSIS + +B + + +=head1 DESCRIPTION + +Sometimes the sound config gets stuck. B tries to get the +config unstuck by reloading modules, and pulseaudio. + + +=head1 AUTHOR + +Copyright (C) 2017 Ole Tange, +http://ole.tange.dk and Free Software Foundation, Inc. + + +=head1 LICENSE + +Copyright (C) 2012 Free Software Foundation, Inc. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 3 of the License, or +at your option any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . + + +=head1 SEE ALSO + +B(1), B(1) + + +=cut + +perl -i.bak -ne '/autospawn/ or print' ~/.pulse/client.conf +echo autospawn=no >> ~/.pulse/client.conf +pulseaudio -k +modules=" + snd_hda_intel + snd_hda_codec_hdmi + snd_hda_codec_analog + snd_hda_codec_generic + snd_hda_codec + snd_hda_core + snd_hwdep + snd_pcm + snd_seq_midi + snd_seq_midi_event + snd_rawmidi + snd_seq + snd_seq_device + snd_timer + snd + soundcore +" +sudo parallel --retries=10 modprobe -r ::: $modules +lsmod|grep snd +sudo parallel -j1 modprobe ::: $modules +timeout 5 pulseaudio --log-level=3 +pulseaudio -D