Divida a linha de interface de áudio USB estéreo para dois dispositivos mono

Divida a linha de interface de áudio USB estéreo para dois dispositivos mono

Eu tenho uma interface de áudio USB Scarlett 2i2 de 3ª geração. Possui duas entradas e duas saídas. As duas entradas são tratadas como microfones estéreo por padrão. Configurações -> Som -> Entrada mostra um dispositivo: "Entrada Analógica - Scarlett 2i2 USB". No entanto, quero que as duas entradas sejam separadas para que eu possa escolher qualquer uma delas em um aplicativo.

Por exemplo, no Firefox, quando algo quiser usar o microfone, posso escolher o 2i2 e as duas entradas serão usadas. Quero poder enviar a entrada esquerda ou direita para um aplicativo, mas não ambas.

Como eu mudaria o Pulse/Alsa para que a interface de áudio fosse dividida em dois dispositivos de entrada virtuais, um com a entrada esquerda e outro com a direita?

Responder1

Bem, graças à resposta de Mattia, descobri que existe uma diferença entre sinkse sources. Um coletor é uma saída, uma fonte é uma entrada. Primeiro, corri pacmd list-sourcese encontrei a linha channel map: front-left,front-right. Estas são as entradas que estou tentando separar. Eu então formei esta linha para colocar /etc/pulse/defaults.pa:

load-module module-remap-source source_name=2i2_Left_Mic source_properties="device.description='2i2 Left In'" master=alsa_input.usb-Focusrite_Scarlett_2i2_USB_Y8J9ZC3950FFF9-00.analog-stereo master_channel_map=front-left channel_map=front-left

O mastervalor veio de pacmd list-sourcese os mapas de canais no final são o que faz isso funcionar. Estou pegando a esquerda física da entrada e mapeando-a para a esquerda virtual da minha fonte de reamplificação. Aqui está a aparência da linha do outro lado:

load-module module-remap-source source_name=2i2_Right_Mic source_properties="device.description='2i2 Right In'" master=alsa_input.usb-Focusrite_Scarlett_2i2_USB_Y8J9ZC3950FFF9-00.analog-stereo master_channel_map=front-right channel_map=front-right

Você também pode anexar esta fonte ao seu servidor de som em execução sem alterar /etc/pulse/defaults.pausando pactl load-module; nesse caso, você precisará escapar dos espaços na descrição com barras invertidas literais como '"foo\ bar"'(parece errado, mas funciona e evita uma mensagem enigmática "Falha: falha na inicialização do módulo "erro):

pactl load-module module-remap-source \
    master=alsa_input.usb-Focusrite_Scarlett_Solo_USB_Y78PVD021E19F4-00.analog-stereo \
    source_name=Scarlett_Left_Mic \
    source_properties=device.description='"Scarlett\ Solo\ Left\ Mic"' \
    channels=1 \
    master_channel_map=front-left \
    channel_map=mono \
    ;

Responder2

Sim, você pode fazer isso. Graças à ductilidade pulseaudiovocê pode gerenciar entrada e saída, fonte e coletor de sua placa de som de seus aplicativos.

Não conheço nenhum exemplo/exercício já feito, então você tem que lidar com isso (pelo menos comece) por você mesmo.

Como @CL afirmou acima,esseé uma ótima fonte para começar.Aqui outrolugar útil.

Finalmente, sugiro algumas GUIs:pavucontrolepaprefs, que pode te ajudar nessa viagem.

informação relacionada