Tão gordo, estou definindo as configurações do microfone:

$ amixer set "Rear Mic" 90% mute cap $ amixer set "Rear Mic Boost" 80% 

Mas, depois algum sistema. atualização, meu canal de recodificação padrão mudou para "Front Mic":

$ amixer sget "Input Source" Simple mixer control "Input Source",0 Capabilities: cenum Items: "Front Mic" "Rear Mic" "Line" "CD" "Mix" Item0: "Front Mic" 

Como alterar "Input Source" para "Read Mic" com amixer? (Atualmente faço isso manualmente com alsamixer ou kmix – adoraria automatizá-lo na inicialização).

Resposta

Eu encontrei solução aqui:

lá eu encontrei:

$ amixer -c0 cset iface=MIXER,name="Input Source",index=1 "Front Mic" # (Record from Front Mic) 

ligeiramente modificado de acordo com minha placa de som e configuração (placa de som padrão, ordem de itens diferentes):

$ amixer cset name="Input Source",index=0 "Rear Mic" 

Resposta

Eu tenho um sistema, onde tenho som de placa-mãe padrão placa + placa de som WebCAM + placa de som USB externa = placa de som Total 3.

Agora, quero ativar / desativar o som da placa de som específica de 3, nesse caso, posso fazer isso usando o seguinte método:

mostre-me todos os cartões do sistema

$ aplay -l **** List of PLAYBACK Hardware Devices **** card 0: PCH [HDA Intel PCH], device 0: CA0132 Analog [CA0132 Analog] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: PCH [HDA Intel PCH], device 3: HDMI 0 [HDMI 0] Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0] Subdevices: 1/1 Subdevice #0: subdevice #0 card 2: U0x11110x2222 [USB Device 0x1111:0x2222], device 0: USB Audio [USB Audio] Subdevices: 0/1 Subdevice #0: subdevice #0 

então quero usar o cartão 2, que é um microfone e alto-falante USB

$ amixer -c2 Simple mixer control "Speaker",0 Capabilities: pvolume pswitch pswitch-joined penum Playback channels: Front Left - Front Right Limits: Playback 0 - 151 Mono: Front Left: Playback 44 [29%] [-20.13dB] [on] Front Right: Playback 44 [29%] [-20.13dB] [on] Simple mixer control "Mic",0 Capabilities: pvolume pvolume-joined cvolume cvolume-joined pswitch pswitch-joined cswitch cswitch-joined penum Playback channels: Mono Capture channels: Mono Limits: Playback 0 - 32 Capture 0 - 16 Mono: Playback 32 [100%] [47.81dB] [on] Capture 16 [100%] [23.81dB] [on] Simple mixer control "Auto Gain Control",0 Capabilities: pswitch pswitch-joined penum Playback channels: Mono Mono: Playback [on] 

Agora, nesta placa de som eu tenho 4 barras

1) Alto-falante 2) Microfone 3) Microfone (captura) 4) Automático ganho

Meu problema é se eu simplesmente faço o amixer sset Capture cap ou toggle, então não funciona

eu tenho que usar uma maneira que pode silenciar tudo para captura de microfone para 0% e quando requer colocá-lo de volta para 70%, sem isso eu não tinha escolha sobrando. É uma falha ALSA, eles deveriam adicionar algo como pulseaudio pactl

# Now this does MUTE for device 2 $ amixer -c2 sset Mic 0dB Simple mixer control "Mic",0 Capabilities: pvolume pvolume-joined cvolume cvolume-joined pswitch pswitch-joined cswitch cswitch-joined penum Playback channels: Mono Capture channels: Mono Limits: Playback 0 - 32 Capture 0 - 16 Mono: Playback 0 [0%] [0.00dB] [on] Capture 0 [0%] [0.00dB] [on] # Unmute for device 2 $ amixer -c2 sset Mic 70dB Simple mixer control "Mic",0 Capabilities: pvolume pvolume-joined cvolume cvolume-joined pswitch pswitch-joined cswitch cswitch-joined penum Playback channels: Mono Capture channels: Mono Limits: Playback 0 - 32 Capture 0 - 16 Mono: Playback 32 [100%] [47.81dB] [on] Capture 16 [100%] [23.81dB] [on] 

Resposta

Você pode usar o parâmetro sset. De man amixer:

 set or sset <SCONTROL> <PARAMETER> ... Sets the simple mixer control contents. The parameter can be the volume either as a percentage from 0% to 100% with % suffix, a dB gain with dB suffix (like -12.5dB), or an exact hardware value. The dB gain can be used only for the mixer elements with available dB information. When plus(+) or minus(-) letter is appended after volume value, the volume is incremented or decremented from the current value, respectively. The parameters cap, nocap, mute, unmute, toggle are used to change capture (recording) and muting for the group specified. The optional modifiers can be put as extra parameters to specify the stream direction or channels to apply. The modifiers playback and capture specify the stream, and the modifiers front, rear, center, woofer are used to spec‐ ify channels to be changed. A simple mixer control must be specified. Only one device can be controlled at a time. 

No seu caso, deve ser tão simples quanto ( NÃO TESTADO )

$ amixer sset "Input Source",0,"Rear Mic" 

Comentários

  • Não funciona $ amixer sset 'Input Source',0,'Rear Mic' retorna: Specify what you want to set....
  • Uma ligeira modificação do Sr. Shunz ' A sintaxe proposta funciona para mim: $ amixer sset 'Input Source' 'Rear Mic' funciona para mim.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *