將立體聲 USB 音訊介面線路輸入分離到兩個單聲道設備

將立體聲 USB 音訊介面線路輸入分離到兩個單聲道設備

我有第三代 Scarlett 2i2 USB 音訊介面。它有兩個輸入和兩個輸出。預設情況下,兩個輸入被視為立體聲麥克風。設定 -> 聲音 -> 輸入顯示一個裝置:「類比輸入 - Scarlett 2i2 USB」。但是,我希望將兩個輸入分開,以便我可以在應用程式中選擇任一輸入。

例如,在 Firefox 中,當有人想要使用麥克風時,我可以選擇 2i2,兩個輸入都會被使用。我希望能夠將左側或右側輸入發送到應用程序,但不能同時發送兩者。

我如何更改 Pulse / Alsa,以便音訊介面分為兩個虛擬輸入設備,一個具有左側輸入,一個具有右側輸入?

答案1

好吧,感謝 mattia 的回答,我發現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,最後的通道圖是使此工作有效的原因。我從輸入中獲取物理左側,並將其映射到我的重播來源的虛擬左側。另一邊的線如下所示:

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.papactl 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上面所說,是一個很好的起點。這裡還有另一個有用的地方。

最後,我推薦一些 GUI:pavucontrolpaprefs,這對你的這次旅行有幫助。

相關內容