Single PC solution - Use of 2 USB sound cards as crossovers using PAX Rack

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
please add
Code:
load-module module-alsa-sink device="multidev"
to your /etc/pulse/default.pa file. maybe you should comment out the line containing
Code:
load-module module-udev-detect
but I don't know atm.
As you're modifying system files you a) need to be root to do that (or use sudo) and b) MAKE A BACKUP BEFOREHAND! :D
 
I tried all this and none worked;

1. Added the first line and commented out all of the lines incorporating the second
2. Commented out only the second line and left the rest of the if statement
3, Did not comment out the second and added the first.

I then commented out the first and PAX Rack again showed the two sound cards but not the virtual device.
 
I tried all this and none worked;

1. Added the first line and commented out all of the lines incorporating the second
2. Commented out only the second line and left the rest of the if statement
3, Did not comment out the second and added the first.

I then commented out the first and PAX Rack again showed the two sound cards but not the virtual device.

1. please remove $HOME/.config/pulse/default.pa if it exists to make sure the system file is read.
2. You do realize that you have to restart pulseaudio after changing default.pa?!
 
I really recommend to check the setup with

Code:
pacmd dump

In my testing case I did not see the PCM device name in GUI, just an extra "Stereo device" or something like it appeared in the output devices list. It was not shown as selected (i.e. active) until running the command

Code:
pacmd set-default-sink alsa_output.multidev

However, all the detailed info was listed in pacmd dump, including proper name of the PCM device.
 
Each device has a VID and PID and if two devices have the same ones then they will clash.

VID and PID are info for the USB core driver to load the correct higher-level device driver. The USB core driver uses bus -> port -> dev IDs for identifying the devices:

Code:
hestia@hestia:~$ lsusb -t
/:  Bus 08.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/:  Bus 07.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/:  Bus 06.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/:  Bus 05.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
    |__ Port 1: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/6p, 480M
    |__ Port 6: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 4: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
        |__ Port 4: Dev 3, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/6p, 480M

If windows USB driver stack could not distinguish two devices with identical VID/PID, it would be a very bad design. Hooking several identical keyboards/mice/USB hubs etc. would not work.

In linux device names are used while it is possible to assign fixed distinct names to identical devices in different USB ports via those udev rules. Is anything like that available in windows?
 
Last edited:
A minor difference is calling the pactl command directly tells whether loading the device was successful or not. The same problem in config file would have to be identified from PA logs I guess. For testing I would prefer the direct-feedback procedure.

One more thing regarding the GUI - upon loading the sink the new device does not appear in hardware list, but in output selection list. The "pactl list sinks" command lists it too.
 
My .asoundrc defines virtual balanced inputs/outputs device called symmetric:

Code:
hestia@hestia:~$ pactl load-module module-alsa-sink device="symmetric"
21

Mint Hardware tab = Configuration tab in pavucontrol - the device is not listed there (probably because it requires no configuration). It is listed in Outputs tab in both GUI tools. I have not tried PaXoverRack.
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.