Behringer umc404hd like interface setup
- PipeWire version (
pipewire --version
): Compiled with libpipewire 0.3.59 - Distribution and distribution version (
PRETTY_NAME
from/etc/os-release
): Garuda Linux - Desktop Environment: KDE
- Kernel version (
uname -r
): 5.19.13-zen1-1-zen
Description of Problem:
I have a generic Chinese interface, it shows that it's using the same chip as Behringer umc404hd (mine is "icon upod-pro") It has 2 inputs and 2 outputs, and some buttons and knobs With windows and asio4all everything works great and as intended
But when i plug it into any linux i see next differences(assuming i set the sound to play wherever):
- The sound just plays, when instead originally i needed to press the button "Input to PC -> Mixing"
- If i press the button, it looks like it adds a little bit more sound. Or if i do press "Mic with DSP" it adds mic sound with effects on top of already playing sound.
- The most annoying problem. The channels are both playing the guitar AND the mic.
So. I tried the approach from https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/Virtual-Devices#behringer-umc404hd-microphoneguitar-virtual-sources I edited the config:
context.modules = [
{ name = libpipewire-module-loopback
args = {
node.description = "CODEC Microphone"
capture.props = {
node.name = "capture.CODEC_Mic"
audio.position = [ AUX0 ]
stream.dont-remix = true
target.object = "alsa_input.usb-BurrBrown_from_Texas_Instruments_USB_AUDIO_CODEC-00.pro-input-0"
node.dont-reconnect = true
node.passive = true
}
playback.props = {
node.name = "CODEC_Mic"
media.class = "Audio/Source"
audio.position = [ MONO ]
}
}
}
{ name = libpipewire-module-loopback
args = {
node.description = "CODEC Guitar"
capture.props = {
node.name = "capture.CODEC_Guitar"
audio.position = [ AUX1 ]
stream.dont-remix = true
target.object = "alsa_input.usb-BurrBrown_from_Texas_Instruments_USB_AUDIO_CODEC-00.pro-input-0"
node.dont-reconnect = true
node.passive = true
}
playback.props = {
node.name = "CODEC_Guitar"
media.class = "Audio/Source"
audio.position = [ MONO ]
}
}
}
]
Now my pw-cli ls Node
looks like that:
id 40, type PipeWire:Interface:Node/3
object.serial = "122"
object.path = "alsa:pcm:2:hw:2,0:playback"
factory.id = "18"
client.id = "36"
device.id = "39"
priority.session = "872"
priority.driver = "872"
node.description = "PCM2900C Audio CODEC Pro"
node.name = "alsa_output.usb-BurrBrown_from_Texas_Instruments_USB_AUDIO_CODEC-00.pro-output-0"
node.nick = "USB AUDIO CODEC"
media.class = "Audio/Sink"
id 44, type PipeWire:Interface:Node/3
object.serial = "44"
factory.id = "18"
client.id = "41"
node.description = "CODEC Microphone"
node.name = "capture.CODEC_Mic"
media.class = "Stream/Input/Audio"
id 45, type PipeWire:Interface:Node/3
object.serial = "45"
factory.id = "18"
client.id = "41"
node.description = "CODEC Microphone"
node.name = "CODEC_Mic"
media.class = "Audio/Source"
id 46, type PipeWire:Interface:Node/3
object.serial = "46"
factory.id = "18"
client.id = "42"
node.description = "CODEC Guitar"
node.name = "capture.CODEC_Guitar"
media.class = "Stream/Input/Audio"
id 47, type PipeWire:Interface:Node/3
object.serial = "47"
factory.id = "18"
client.id = "42"
node.description = "CODEC Guitar"
node.name = "CODEC_Guitar"
media.class = "Audio/Source"
id 53, type PipeWire:Interface:Node/3
object.serial = "54"
factory.id = "10"
client.id = "36"
node.name = "Midi-Bridge"
media.class = "Midi/Bridge"
id 59, type PipeWire:Interface:Node/3
object.serial = "123"
object.path = "alsa:pcm:2:hw:2,0:capture"
factory.id = "18"
client.id = "36"
device.id = "39"
priority.session = "1872"
priority.driver = "1872"
node.description = "PCM2900C Audio CODEC Pro"
node.name = "alsa_input.usb-BurrBrown_from_Texas_Instruments_USB_AUDIO_CODEC-00.pro-input-0"
node.nick = "USB AUDIO CODEC"
media.class = "Audio/Source"
And.. the sound is still stereo. I don't even want to say about the buttons..
How Reproducible:
You need icon upod-pro The issue persist before and after trying the config from the docs
Steps to Reproduce:
- Plug-in the device
- Go to JACK graph
- Connect the nodes
- Capture 0 to sink input 0, sink capture 0 to output 0 (?)
Actual Results:
Listen to the guitar playing and the same time with the mic
Expected Results:
The sound from channel 0 is the guitar, and from the channel 1 is the mic
Additional Info (as attachments):
-
pw-dump > pw-dump.log
: pw-dump.log