Como alterar o microfone para usar no PulseAudio

3

Procurando realizar o seguinte:

  • Altere o microfone padrão do microfone analógico para o Logitech 920C Webcam Mic (ou vice-versa) a partir da linha de comando.
    • gostaria de poder fazer isso usando o / ou / o ID do fornecedor, o ID do produto em vez do nome do dispositivo longo e complicado. Minhas habilidades de script são rudimentares, então isso está perdido em mim.
  • Se isso não funcionar, redefina a conexão USB com a câmera para que ela seja redescoberta.

Antecedentes

Eu tenho um sistema de quiosque que é inicializado sempre e é configurado a partir de um arquivo de configuração em um servidor web. Atualmente tenho dois microfones conectados ao quiosque; um microfone analógico na porta do microfone e um logitech 920C com microfone interno. Geralmente, o microfone interno é o padrão. Posso passar comandos do arquivo de configuração e gostaria de escolher qual microfone está ativo após a inicialização usando esse método. o sistema reconhece os dois microfones, mas o logitech não parece passar nenhum som para o sistema, mesmo depois de manipulá-lo no pavucontrol. A única maneira de fazer isso funcionar depois de uma inicialização é desligá-lo fisicamente e reconectá-lo, e nesse ponto ele funciona como esperado.

O que eu tentei

Eu tentei vários métodos para tentar alterar o microfone padrão do analógico para o logitech. O código abaixo funcionou na alteração do dispositivo padrão, mas não alterou a função do microfone.

$ pacmd "set-default-source device-name-of-logitech"

Eu posso silenciar e ativar o som e alterar o volume da fonte com o código abaixo, mas isso não afeta a função

$ pactl set-source-mute 0 1
$ pactl set-source-volume 0 50%

Eu também tentei redefinir o dispositivo usb usando o código abaixo. Ao fazer isso, o logitech irá desaparecer do pavucontrol e reaparecer, mas ainda sem nenhum resultado funcional para fazer o microfone enviar o áudio

sudo sh -c "echo 0 > /sys/bus/usb/devices/1-4.6/authorized"
sudo sh -c "echo 1 > /sys/bus/usb/devices/1-4.6/authorized"

Parece que a única coisa que funciona com sucesso e repetidamente é desconectar fisicamente / reconectar a câmera do computador. É um pouco um hack, mas se eu pudesse reproduzir essa ação a partir da linha de comando, talvez consiga fazê-lo funcionar, embora não com muita elegância.

Além disso, seria ótimo poder enviar esses comandos referenciando o vendorID e o productID, pois nem sempre tenho certeza de qual índice os dispositivos terão se as conexões físicas forem ligeiramente diferentes de sistema para sistema. Como mencionado antes, minhas habilidades de script de linha de comando são deploráveis, então qualquer ajuda em fazer isso seria apreciada.

Qualquer ajuda é apreciada francamente ... obrigado antecipadamente.

    
por Chardho 02.11.2017 / 16:54

0 respostas