From db7c8154dd155d42fe1dfd7865bdf0cf204db612 Mon Sep 17 00:00:00 2001 From: James Meyer Date: Sat, 29 Oct 2011 20:28:48 -0500 Subject: LinHES-config: fix up the audio switching between OSS. Always sync the frontend, remove the other sync options --- abs/core/LinHES-config/PKGBUILD | 8 +-- abs/core/LinHES-config/mv_common.py | 9 +-- abs/core/LinHES-config/soundconfig.sh | 105 ++++++++++++++++++--------------- abs/core/LinHES-config/systemconfig.py | 1 + 4 files changed, 69 insertions(+), 54 deletions(-) diff --git a/abs/core/LinHES-config/PKGBUILD b/abs/core/LinHES-config/PKGBUILD index 2c6cdb0..ddfc5a4 100644 --- a/abs/core/LinHES-config/PKGBUILD +++ b/abs/core/LinHES-config/PKGBUILD @@ -1,6 +1,6 @@ pkgname=LinHES-config pkgver=2.3 -pkgrel=37 +pkgrel=41 conflicts=(MythVantage-config MythVantage-config-dev LinHES-config-dev LinHes-config ) pkgdesc="Install and configure your system" depends=('bc' 'libstatgrab' 'mysql-python' 'expect' 'curl' 'dnsutils' 'parted' @@ -112,7 +112,7 @@ md5sums=('6259677916192a92d1adf47b276f7829' '9ae8d79f620c6d19973c55c32a921874' '7af56cecd1081d45f57fb207df0a0c87' 'ecf9e5df20683a769c4a8a8f2d65de85' - 'e459ed069317bccb20351f037a9df3d2' + 'eaf845dda830c531649d5840e0584f8e' '97de45a04f4efbd9d40d9fc0e1db1c3f' '6aff504ed5e860adc1b7317cd0780900' '55fccb1da0417a896b724f7cfc32dd5a' @@ -123,7 +123,7 @@ md5sums=('6259677916192a92d1adf47b276f7829' '3d1e4a119f38cff0498bf8a67e94e4b3' '71fd2d0d448fc2fcd15415a1beed7109' '5f3259afe031fda189edae41dd1458f0' - '41b03fb1e0a9d9ae7588e3b813212772' + '252ae3a088948a0d125ea6e8daa211f5' 'b845de3e05c1734cce4b9ac5e8f1baaf' '4d0464a1bef1819f6f9c100609eb55ad' '5e69839659d65ddda35b8a9982dc29e9' @@ -133,6 +133,6 @@ md5sums=('6259677916192a92d1adf47b276f7829' 'f0988a801216b44c96bf17e24a23e3a9' '23d0e12b7ca1cc6ea6b993c1d7ff20b9' '8a713ce49211eb0b91c84ba0b9cf52fe' - '5ff552dbae98b3bf312171f9b4c5e787' + '5e3e06b31c40fe6b0e74860a8137b720' '2596460462cf6c889cf8f95485537b20' 'a63ff9ef5250965aeabc74bfa8e43981') diff --git a/abs/core/LinHES-config/mv_common.py b/abs/core/LinHES-config/mv_common.py index 0272809..5257a5a 100755 --- a/abs/core/LinHES-config/mv_common.py +++ b/abs/core/LinHES-config/mv_common.py @@ -196,10 +196,11 @@ def reloadfe(dbhost,RESTART_LCD): runcmd(cmd) restartLCD(RESTART_LCD) - for pid in getpid("mythfrontend"): - cmd = ''' kill -s USR1 %s ''' %pid - #runcmd(cmd) - logging.info(" Reloading frontend with pid of %s",pid) +# for pid in getpid("mythfrontend"): + pid = getpid("mythfrontend") + cmd = ''' kill -s USR1 %s ''' %pid + runcmd(cmd) + logging.info(" Reloading frontend with pid of %s",pid) logging.debug("__End of reloadfe\n") diff --git a/abs/core/LinHES-config/soundconfig.sh b/abs/core/LinHES-config/soundconfig.sh index 75998d6..5778cee 100755 --- a/abs/core/LinHES-config/soundconfig.sh +++ b/abs/core/LinHES-config/soundconfig.sh @@ -2,13 +2,15 @@ . /etc/systemconfig . /etc/profile echo $@ >/tmp/audio.call -#set -x + BASE="" . /etc/profile -#TEMPLATES="/usr/share/templates" -#TESTFILE="$TEMPLATES/audio/space_battle_A.wav" TESTFILE="/usr/share/sounds/alsa/Front_Center.wav" OSSinstalled="false" +BLACKLIST=/etc/modprobe.d/soundconfig_blacklist.conf + +echo "---------------------------------------" + function testaudio () { @@ -17,27 +19,30 @@ ossplay -d$AUDIODEVICE $TESTFILE } function load_alsa() { - - remove_service.sh alsa-utils -# cd /lib/modules/2.6.21-STB + echo "Loading ALSA ..." + remove_service.sh alsa-utils 1> /dev/null 2> /dev/null KER=`uname -r` - cd /lib/modules/$KER/kernel/ - tar -xvf /lib/modules/alsa-$KER.tar - pacman -Sf --noconfirm alsa-lib + cd /lib/modules/$KER/ + echo " uncompressing ALSA modules" + tar -xf sound-preoss.tar.bz2 +# echo " installing alsa-lib" + #pacman -Sf --noconfirm alsa-lib + echo "triggering udev module load" depmod -a - cd - - udevadm trigger + cd - > /dev/null + #udevadm trigger udevadm settle udevadm trigger + add_service.sh alsa-utils - sleep 4 - sv start alsa-utils + } function unload_alsa () { + echo "unloading ALSA ..." #kill $(lsof -t /dev/dsp* /dev/audio* /dev/mixer* /dev/snd/*) && modprobe -r $(lsmod |grep ^snd |awk '{print $1}') sv stop alsa-utils remove_service.sh alsa-utils @@ -48,24 +53,28 @@ function unload_alsa () { } function unload_oss { + echo "unloading OSS ..." sv stop oss soundoff rm -rf /dev/dsp* rm -rf /dev/oss* rm -rf /dev/sndstat remove_service.sh oss + rm -f $BLACKLIST } function installOSS { - echo "installing oss" + echo "installing OSS ..." pacman -Q oss 2>/dev/null if [ ! $? = 0 ] then pacman --noconfirm -Sf oss fi + soundon add_service.sh oss - sleep 4 - sv start oss + echo "install soundcore /bin/false" >$BLACKLIST + + } @@ -108,51 +117,54 @@ $MV_ROOT/bin/restore_default_settings.sh -c MUSICFRONT function checkOSSinstalled () { + echo "Checking if OSS is installed" ossinfo |grep Version |grep -q OSS >/dev/null resultcode=$? - echo $resultcode + if [ $resultcode = 0 ] then OSSinstalled='true' + echo " OSS is loaded" else OSSinstalled='false' + echo " OSS is NOT loaded" fi } function sound_config_system { - - if [ x$syncXine = x1 ] - then - SYNCXINE - fi - if [ x$syncMplayer = x1 ] - then - SYNCMPLAYER - fi - if [ x$syncMythMusic = x1 ] - then - SYNCMYTHMUSIC - fi - if [ x$syncMythFrontend = x1 ] - then - SYNCMYTHFRONTEND - fi + + SYNCMYTHFRONTEND +# if [ x$syncXine = x1 ] +# then +# SYNCXINE +# fi +# if [ x$syncMplayer = x1 ] +# then +# SYNCMPLAYER +# fi +# if [ x$syncMythMusic = x1 ] +# then +# SYNCMYTHMUSIC +# fi +# if [ x$syncMythFrontend = x1 ] +# then +# SYNCMYTHFRONTEND +# fi } function loadsound (){ checkOSSinstalled if [ x$AUDIOTYPE = xOSS -o x$AUDIOTYPE = xoss ] - #then - # if [ $OSSinstalled = "false" ] then while [ $OSSinstalled = "false" ] do unload_alsa - rm /tmp/.alsatest + if [ -e /tmp/.alsatest ] + then + rm /tmp/.alsatest + fi installOSS - installOSS - sleep 2 checkOSSinstalled done # fi @@ -160,7 +172,7 @@ function loadsound (){ touch /tmp/.alsatest unload_oss load_alsa - load_alsa + #load_alsa rm /tmp/.alsatest fi @@ -189,15 +201,15 @@ fi while getopts "$OPTSTRING" SWITCH do case $SWITCH in - \?) echo "unkown option" + \?) echo "unknown option" exit 11 ;; - i) echo "$SWITCH" "$OPTARG" + i) #echo "$SWITCH" "$OPTARG" AUDIOTYPE="$OPTARG" ;; - d) echo "$SWITCH" "$OPTARG" + d) #echo "$SWITCH" "$OPTARG" AUDIODEVICE=$OPTARG ;; - t) echo "$SWITCH" "$OPTARG" + t) #echo "$SWITCH" "$OPTARG" SOUNDOPTYPE="$OPTARG" if [ x"$OPTARG" = xtest ] then @@ -217,7 +229,7 @@ done case $SOUNDOPTYPE in REAL|real ) - loadsound + # loadsound sound_config_system ;; test|TEST) @@ -229,7 +241,8 @@ case $SOUNDOPTYPE in ossplay -d$AUDIODEVICE $TESTFILE else echo "testing ALSA $AUDIODEVICE " - aplay --device=$AUDIODEVICE $TESTFILE + echo aplay --device=$AUDIODEVICE $TESTFILE + aplay -d=$AUDIODEVICE $TESTFILE fi ;; diff --git a/abs/core/LinHES-config/systemconfig.py b/abs/core/LinHES-config/systemconfig.py index 3cba427..31d2164 100755 --- a/abs/core/LinHES-config/systemconfig.py +++ b/abs/core/LinHES-config/systemconfig.py @@ -143,6 +143,7 @@ def main(argv): if not systemconfig.get("Audiotype") == "tinker": cmd="%s/bin/soundconfig.sh -t real -i %s -d %s" %(MVROOT,systemconfig.get("Audiotype"),systemconfig["SoundDevice"]) mv_common.runcmd(cmd) + mv_common.reloadfe(systemconfig.get("dbhost"),restartlcd) else: logging.debug(" Tinker mode(audio), not changing configuration") logging.debug("__End of audio") -- cgit v0.12