comutando placas de som

4 views
Skip to first unread message

Jorge Barros de Abreu

unread,
Nov 18, 2017, 9:40:17 AM11/18/17
to slack-u...@googlegroups.com

Olá.

Estou criando um script para controlar as placas de som.
Gostaria de incluir nele um nível de volume inicial mas não
encontrei o comando. Eu achei um outro mas ele só funciona após
o som/vídeo ter sido iniciado e eu gostaria de setar o
volume "antes":

amixer set Master 40%+

O comando acima aumenta o som em 40% mas somente após o
vídeo ter começado e não pode ser colocado no script pois
ele atua somente na placa que estava ativa antes de o
script ter sido rodado.

Agradeço antecipadamente.
Obrigado.

O script atualmente está assim:

#!/bin/bash
PONTOASOUND="/home/user/.asoundrc"
somvga(){
echo "defaults.pcm.card 0" > $PONTOASOUND
echo "defaults.pcm.device 0" >> $PONTOASOUND #som nas caixas de som
#echo "defaults.pcm.device 1" >> $PONTOASOUND #som na saida auxiliar da placa
export AUDIOCARD=0
}
somhdmi(){
echo "defaults.pcm.card 0" > $PONTOASOUND
#echo "defaults.pcm.device 3" >> $PONTOASOUND #som no monitor
echo "defaults.pcm.device 7" >> $PONTOASOUND #som na TV
export AUDIOCARD=1
}
if [ "$1" == "hdmi" ];then
somhdmi
else if [ "$1" == "vga" ];then
somvga
else
rm $PONTOASOUND
echo "$PONTOASOUND apagado"
fi
--
Data Estelar 2458076,150995
http://sites.google.com/site/ficmatinf
Desejo-lhe Paz, Vida Longa e Prosperidade.
São Bem Vindas Mensagens no Formato texto UTF-8 com Acentos.

Jorge Barros de Abreu

unread,
Nov 18, 2017, 1:16:10 PM11/18/17
to slack-u...@googlegroups.com


O script não consegue alternar entre as placas como eu esperava.
Ele muda para uma mas não volta para a antiga.
Removi o módulo da placa e chamei de volta mas isso não fica legal.

Como reinicio as configurações de som sem reiniciar o computador
e sem remover/carregar o módulo da placa?
--
Data Estelar 2458076,294120

Jorge Barros de Abreu

unread,
Nov 18, 2017, 2:49:43 PM11/18/17
to slack-u...@googlegroups.com
Acabo de ver outro um erro

somhdmi(){
echo "defaults.pcm.card 0" > $PONTOASOUND

O correto é

somhdmi(){
echo "defaults.pcm.card 1" > $PONTOASOUND
--
Data Estelar 2458076,365451

Jorge Barros de Abreu

unread,
Nov 19, 2017, 10:09:09 AM11/19/17
to slack-u...@googlegroups.com
Não foi o planejado e ficou bem longe disso.
O asound.conf está abaixo.
Programei somente as saídas de som.
Não existe o .soundrc
Por que ficou dessa forma?
Porque foi assim que funcionou.
Foi assim que todas as saídas ficaram acessíveis.
Tenho acesso a todas as saídas de som e controlo os volumes respectivos.

Comandos testados:

mplayer -ao alsa:device=tv -af volume=-20:0 arquivo.mp3
mplayer -ao alsa:device=line -af volume=-20:0 arquivo.mp3
mplayer -ao alsa:device=fone -af volume=-20:0 arquivo.mp3
mplayer -ao alsa:device=monitor -af volume=-20:0 arquivo.mp3
mplayer -ao alsa:device=hw=0.0 -af volume=-20:0 arquivo.mp3
mplayer -ao alsa:device=hw=0.1 -af volume=-20:0 arquivo.mp3
mplayer -ao alsa:device=hw=1.3 -af volume=-20:0 arquivo.mp3
mplayer -ao alsa:device=hw=1.7 -af volume=-20:0 arquivo.mp3

/etc/asound.conf
#hw:1,3
pcm.monitor {
type hw
card 1
device 3
}
ctl.monitor {
type hw
card 1
device 3
}
#hw:1,7
pcm.tv {
type hw
card 1
device 7
}
ctl.tv {
type hw
card 1
device 7
}
#hw:0,0
pcm.fone {
type hw
card 0
device 0
}
ctl.fone {
type hw
card 0
device 0
}
#hw:0,1
pcm.line {
type hw
card 0
device 1
}
ctl.line {
type hw
card 0
device 1
}

Até.

--
Data Estelar 2458077,170880

Jorge Barros de Abreu

unread,
Nov 19, 2017, 10:31:43 AM11/19/17
to slack-u...@googlegroups.com
Pode ser usado via script:

#inicio do script
#$1 é o dispositivo:tv, line, fone, monitor
#$2 é o valor do volume
#$3 é o arquivo a ser reproduzido
#o volume vai de -200 a 60
#uso:
#$0 tv -20 arquivo.mp4
#$0 tv -20 arquivo.mp3
#$0 tv -20 arquivo.avi
pulseaudio -k ; pulseaudio --start
mplayer -ao alsa:device=$1 -af volume=$2:0 $3
#fim do script


--
Data Estelar 2458077,186944
Reply all
Reply to author
Forward
0 new messages