ALSA soa os números do intervalo de volume da placa e Diferença entre nomes de controle

0

Estou desenvolvendo meu primeiro driver de placa de som no Ubuntu com o ALSA. Implementando um controle de volume para a placa de som, me deparei com algumas perguntas.

1) Para a função que é designada para snd_kcontrol_new.info, estou tentando entender a lógica por trás da escolha dos valores de snd_ctl_elem_info.value.integer.min e max. minha placa de som pode ir entre -100db e 0db, como eu decido se eu mapeá-la para 0-100 no snd_ctl_elem_info.value.integer.min / max ou 0-15, ou qualquer outro intervalo?

2) Estou lutando para entender a diferença entre os nomes de controle PCM Playback Volume, Master Playback Volume e Playback Volume.

Obrigado pelas respostas e peço desculpas se as perguntas forem muito triviais, mas não consegui encontrar uma boa explicação para elas.

    
por Michael P 28.10.2015 / 20:24

1 resposta

1
  1. Os valores de controle normalmente são apenas os valores de registro do hardware.

    O mapeamento entre valores de controle e valores de dB é feito com metadados de TLV.

  2. "PCM" aplica-se ao som reproduzido através do dispositivo PCM, enquanto "Master" aplica-se a todos os sons reproduzidos.

por 28.10.2015 / 23:11