Comando para ativar o som e maximizar o volume?

5

Eu preciso desativar / ativar o som da linha de comando. Eu descobri que posso fazer isso com:

amixer sset Master mute
amixer sset Master unmute

o problema é que o comando para unmute não está funcionando (como descrito também neste relatório de erros: link )

Minha pergunta é: existe outra maneira de obter o mesmo resultado, considerando que o amixer não está funcionando?

Além disso, se eu definir manualmente o volume para o mínimo e, em seguida, chamar

amixer sset Master 100%

o volume aumenta, mas não muda para o máximo, mesmo que o stdout diga:

Simple mixer control 'Master',0
Capabilities: pvolume pswitch pswitch-joined penum
Playback channels: Front Left - Front Right
Limits: Playback 0 - 31
Mono:
Front Left: Playback 31 [100%] [0.00dB] [on]
Front Right: Playback 31 [100%] [0.00dB] [on]

Alguém pode me ajudar com isso?

    
por giuspen 09.11.2011 / 17:20

7 respostas

5

Tente os seguintes comandos em um terminal

amixer -c 0 set Master playback 0% mute
amixer -c 0 set Master playback 100% unmute

Isso deve garantir que todas as saídas sejam controladas. É provável que com seus comandos publicados a razão pela qual o volume não é 100% é que o amixer não libera todas as saídas, por exemplo, fones de ouvido ou qualquer outra saída de som ao mesmo tempo.

    
por Mark Rooney 04.03.2012 / 07:39
14

Ainda melhor é este, ative todos os dispositivos de áudio. e definir o volume para 70%

for x in 'amixer controls  | grep layback' ; do amixer cset "${x}" on ; done


for x in 'amixer controls  | grep layback' ; do amixer cset "${x}" 70% ; done

no exemplo acima, o HDMI e o óptico não estão desimpedidos ..

    
por ThcTLo 23.08.2013 / 08:48
3

Obtenha todas as fontes de sons, obtenha seus nomes, crie uma linha de comando com o amixer e execute-o

amixer scontrols | grep -oE "'.*'" | awk -F\' \
 '{print "amixer -c 0 set \"""\" unmute 100"}' | sh

Ative todos os dispositivos de áudio e defina o volume para o máximo

Tenha um ótimo, Mike

    
por Mike 27.09.2014 / 16:41
2

A solução de Mark Rooney não funcionou para mim, mas consegui contornar isso ao ativar explicitamente todos os canais.

#!/bin/bash

for i in Master Headphone PCM Front Surround Center LFE Side; do
    amixer -c 0 set "$i" playback unmute
done &>/dev/null

Eu tenho os nomes dos canais, mas estou executando alsamixer .

    
por Jesse Ogle 17.03.2012 / 22:29
1

Ok, primeiro você precisa saber seus números de cartão diferentes de

alsamixer

selecione cards de F6 e anote o número do cartão que possui a opção Master

Se você usa fones de ouvido, alteramos o Master e o Headphone

amixer -c 1 set Master toggle && amixer -c 1 set Headphone toggle

onde -c especifica o número do cartão, 1 neste comando.

    
por haytham-med haytham 10.01.2016 / 13:53
0

Os comandos que você está usando também não funcionam para mim, mas tente isso. Eles trabalham para mim.

amixer set Master 0
amixer set Master 100
    
por per 09.11.2011 / 20:07
0

A resposta aceita do Mark Rooney não me ajudou porque esse comando me deu um erro (minha placa de som tem o número 1):

amixer: Mixer attach hw:1 error: Invalid argument

Então eu tentei

amixer set Master 100 unmute

e funcionou perfeitamente para a placa de som atualmente selecionada. Você também pode silenciar usando

amixer set Master 0 mute
    
por user2513149 10.11.2016 / 06:36