#!/bin/bash ENABLED=no [ "$ENABLED" != "yes" ] && exit 0 DEBUGMODE=no SNDMIX_MASTER_N=Master SNDMIX_MASTER_VOL=35% SNDMIX_DEFAULT_VOL=90% SNDMIX_SWITCH_ON="IEC958 Playback Default,IEC958 Playback Switch" SNDMIX_SWITCH_OFF="Beep Playback Switch,Mic Playback Switch" . /usr/lib/ublinux/functions . /usr/lib/ublinux/os-config debug_mode "$0" "$@" SOURCE=${SYSCONF}/config; [ -f ${SOURCE} ] && . ${SOURCE} 2>/dev/null # in case of card 0 is HDMI, card 1 is audiocard if [ "$SNDFINCARD" != "no" ] ;then if [ -z "$ALSACARD" -o -z "$ALSADEVICE" ] && LC_ALL=C aplay -l | grep -qi "card 0.*HDMI" ;then ALSACARD=$(aplay -l | grep -v "card 0:" | grep -m1 "card .:.*device " | sed s/"card "// | sed s/":.*"//) ALSADEVICE=$(LC_ALL=C aplay -l | grep -m1 "card $ALSACARD:.*device " | sed s/".* device "// | sed s/:.*//) fi fi # setting default alsa card if its specified if [ "$ALSACARD" -a "$ALSADEVICE" ] ;then echo -e "#you can specify default alsa device, check output of aplay -l\\ndefaults.pcm.card $ALSACARD\\ndefaults.pcm.device $ALSADEVICE" >/etc/skel/.asoundrc for a in /home/* ;do if [ ! -f $a/.asoundrc ] ;then cp /etc/skel/.asoundrc $a chmod 666 $a/.asoundrc fi done fi # default settings for mixer if [ "$SNDMIXSET" != "no" ] ;then amixer controls | awk -F, '{print $1}' | while read a ;do SNDNAME=$(LC_ALL=C amixer cget "$a" | grep -m1 name= | awk -F'name='\' '{print $2}' | awk -F\' '{print $1}') SNDTYPE=$(LC_ALL=C amixer cget "$a" | grep -m1 type= | awk -F'type=' '{print $2}' | awk -F, '{ print $1}') if [ "$SNDTYPE" = "INTEGER" ] ;then if echo $SNDNAME | grep -qi "$SNDMIX_MASTER_N" ;then [ "$DEBUG" = "on" ] && echo setting $SNDNAME to $SNDMIX_MASTER_VOL amixer cset "$a" "$SNDMIX_MASTER_VOL" >/dev/null 2>&1 else [ "$DEBUG" = "on" ] && echo setting $SNDNAME to $SNDMIX_DEFAULT_VOL amixer cset "$a" "$SNDMIX_DEFAULT_VOL" >/dev/null 2>&1 fi elif [ "$SNDTYPE" = "BOOLEAN" ] ;then if echo $SNDMIX_SWITCH_ON | grep -q "$SNDNAME" ;then [ "$DEBUG" = "on" ] && echo setting $SNDNAME to ON amixer cset "$a" on >/dev/null 2>&1 fi if echo $SNDMIX_SWITCH_OFF | grep -q "$SNDNAME" ;then [ "$DEBUG" = "on" ] && echo setting $SNDNAME to OFF amixer cset "$a" off >/dev/null 2>&1 fi fi done fi