Разделение стерео USB аудио интерфейса Line In на два моно устройства

Разделение стерео USB аудио интерфейса Line In на два моно устройства

У меня есть USB-аудиоинтерфейс Scarlett 2i2 третьего поколения. У него два входа и два выхода. По умолчанию оба входа рассматриваются как стереомикрофоны. Настройки -> Звук -> Вход показывает одно устройство: «Аналоговый вход - Scarlett 2i2 USB». Однако я хочу, чтобы два входа были разделены, чтобы я мог выбрать любой из них в приложении.

Например, в Firefox, когда что-то хочет использовать микрофон, я могу выбрать 2i2, и оба входа будут использоваться. Я хочу иметь возможность отправлять либо левый, либо правый вход в приложение, но не оба.

Как изменить Pulse / Alsa так, чтобы аудиоинтерфейс был разделен на два виртуальных устройства ввода: одно с левым входом, другое с правым?

решение1

Ну, благодаря ответу Маттии, я обнаружил, что есть разница между sinksи sources. Приемник — это выход, источник — это вход. Сначала я запустил pacmd list-sourcesи нашел строку channel map: front-left,front-right. Это входы, которые я пытаюсь разделить. Затем я сформировал эту строку, чтобы вставить /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

Значение masterпришло из pacmd list-sources, а карты каналов в конце — это то, что заставляет это работать. Я беру физический левый от входа и сопоставляю его с виртуальным левым для моего источника reamp. Вот как выглядит линия для другой стороны:

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

Вы также можете присоединить этот источник к работающему звуковому серверу без внесения изменений , /etc/pulse/defaults.paиспользуя pactl load-module, в этом случае вам нужно будет экранировать пробелы в описании с помощью обратных косых черт, например '"foo\ bar"'(выглядит неправильно, но работает и позволяет избежать загадочной ошибки «Сбой: сбой инициализации модуля»):

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 \
    ;

решение2

Да, вы можете это сделать. Благодаря пластичности pulseaudioвы можете управлять входом и выходом, источником и приемником вашей звуковой карты ваших приложений.

Я не знаю ни одного готового примера/упражнения, так что вам придется с этим разобраться (по крайней мере начать) самостоятельно.

Как сказал @CL выше,этототличный источник для начала.Вот еще одинполезное место.

Наконец, я предлагаю несколько графических интерфейсов:pavucontrolиpaprefs, которые могут помочь вам в этой поездке.

Связанный контент