Atualmente, estou desenvolvendo uma placa de som USB compatível com áudio USB classe 2. Na minha configuração atual tenho controles de áudio e mudo para vários canais trabalhando no alsamixer.
A especificação de áudio USB classe 2 também suporta muitos outros controles, como graves, médios, agudos, equalizadores, efeitos, etc. Tenho tentado encontrar uma lista de controles suportados pelo alsamixer, mas a documentação não menciona nenhum detalhe específico sobre o que tipos de controles são suportados.
Se alguém tiver uma lista com controles suportados ou um programa de linha de comando alternativo, ficaria muito grato.
Não existe tal
já que… qualquer elemento de controle adequadamente exposto pelo dispositivo pode ser levado em consideração por
amixer
, vg listado peloamixer scontrols
comando e acessível na interface gráfica através de algum botão, controle deslizante ou lista de acordo com seu tipo (BOOLEAN, INTEGER ou ENUM respectivamente) chamando alsalib's funções snd_ctl* .Esses elementos de controle podem obter diferentes tipos de propriedades (valores mínimo/máximo, tamanho do passo, lista de valores possíveis).
Do lado do amixer, não há absolutamente nada específico para dispositivos de áudio USB classe 2.
Esses elementos de controle são definidos pelo driver em
struct snd_ctl_elem_info
objetos do tipopara o que seria um elemento de controle booleano .
Consulte o link acima para obter mais detalhes sobre os elementos de controle , bem como a documentação da API do kernel ALSA para documentação oficial e exemplos detalhados de código de drivers de som.
Alguns drivers alsa podem ajudar pré-definindo (vg não se restringindo a uma lista exaustiva) alguns controles, no que diz respeito especificamente ao driver usb_audio :