Pulseaudio Crossover Rack - multi-way crossover design & implementation with linux

Even on Manjaro forum all posters are advised to use the above method of Alsamixer which does change permanently the default card.

Please can you point to such recommendation? I cannot find the code for setting default alsa device anywhere in alsamixer source code. Maybe manjaro uses a modified alsamixer but I very much doubt it.


Are you not basing it on the Motherboard default programming ?

I am afraid I do not understand your question.
 
As I post I have the Terminal on my screen, I input = alsamixer ( no sudo needed).


I key=F6
up comes box=sound card
in my case=default is shown as 0 (first choice )=Creative X-Fi



This is followed by=1=HDA Intel PCH ( Intel board )

2=HDA NVidia ( I have a Nvidia PCI-Express slot video card )


To make changes key down or enter new device

default -0-is clearly seen as Creative X-Fi



This doesn't change even with Manjaro,s rolling distro (full system update ) so this is accepted by the motherboard which normally would chose Intel (Intel board ) as the default .


Its been that way for many years since I moved from Win 7 Prof. to Manjaro ( after trying Mint).


Manjaro is not a consumer orientated operating system you must have some inbuilt technical knowledge ,some coding skills and be proficient with Terminal use .
Nothing stops you destroying Manjaro that's why I like it .
You make the changes.

You remove all the apps.
You change the basic coding (at your own risk !)



A world of difference from Redmond,s world of control over Win 10.
 
But that does not switch the default soundcard, just changes the soundcard for which alsamixer is currently changing controls.

The motherboard does not determine order of the soundcards/their ID in alsa, it is the order in which PCI/e devices are enumerated and udev loads their module/driver. In your case the XFi happens to be enumerated first, hence the ID 0. It is perfectly possible the ID would change if you moved your XFi to a different slot.

The default alsa setup selects card ID 0 as the "default" device.
 
Your wrong its just a more friendly version of Arch from the same organization your exaggeration of differential is way out .


Same basic system just with some apps already installed to make it less work to set up .


Every change in Arch is made in Manjaro using the same codes and logic ,you have obviously not spent any time in coming to your wrong conclusion .


The same updates to Arch are applied to Manjaro once they are GUARANTEED as stable or you can install the unstable versions .


As you are not willing to accept my word will you accept the wiki on it ?


Manjaro - Wikipedia
Sorry but that link also states that Manjaro is a separate distribution and they are certainly not from the same organiztion. Did you actually read the wikipedia article yourself? Arch is much closer to Arch than Ubuntu is to Debian, but the differences are still significant. The whole user friendly approach means that someone has made a lot of choices for you. If you have installed an Arch system using the official instructions you know how much that really is.


This whole discussion has drifted very far from the topic of this thread and I will not post anythin more not related to the actual topic. If you want to continue discussing whatever it is you want to discuss, please open a new thread.
 
Last edited:
But that does not switch the default soundcard, just changes the soundcard for which alsamixer is currently changing controls.

The motherboard does not determine order of the soundcards/their ID in alsa, it is the order in which PCI/e devices are enumerated and udev loads their module/driver. In your case the XFi happens to be enumerated first, hence the ID 0. It is perfectly possible the ID would change if you moved your XFi to a different slot.

The default alsa setup selects card ID 0 as the "default" device.


I never said the mother board determined the order of the sound cards I meant that when installed the motherboard being an Intel board automatically defaults to its own "sound card " (built-in ) .


I have installed enough systems to my own built PC,s to come to that practical conclusion .
Installing a sound card without changing the default leaves --NO sound.


Once I changed the default to Creative and removed Pulse (all of it --it took a lot of removing ! ) I installed/built all the Alsa apps and it works like a dream.


The programming does not ask which slot its in just that I make it default as it wont work otherwise .


While the basic system operation programming will mention that the determining factor in my case is the change of routing caused by my own actions to make the Creative card default .


In a nutshell -- no self installed card in a slot--defaults to Intel .
Card installed programming required to change default to installed card.


The combination of the detailed Creative card and the old Acram amp which is smooth combined with the openness of the Sony speakers produce a beautiful synergy so good I leave it running in the background while working at my bench .
 
On the bottom of the paxor window, it says "Inserted: Yes | DSP: 44.1kHz/s16LE | HW: 44.1kHz/s16LE" I changed the settings in /etc/pulse/daemon.conf to float32le, samplerate 192000 etc., so shouldn't it reflect that in this line? It doesn't change with samplerate and bitrate of the music files I play.

Otherwise it is spot on. Reliable, easy, flexible. I now have a tight setup running, which is a VNC window open on my second screen on my main desktop PC, controlling a RPI 3 with Hifiberry miniamp and paxor, running two capable DIY fullrange loudspeakers. A simple raspberry pi and a simple amp HAT. I wish my commercial hardware-based DSP products had performed so well. This makes me want to tinker.
 
Pulseaudio Crossover Rack v1.51 released

Hi folks,

I'm happy to announce version 1.51 with minor improvements. Big things are going on in the background, none of which are releaseable to the public in any way or form just yet.

That is except one new feature: Pulseaudio Crossover Rack v1.51 now has proper command line argument parsing.

Here's the program's help text which I'll explain down below...

Code:
usage: Pulseaudio Crossover Rack 1.51 [-h] [--file [FILE]]
                                      [--apply [APPLY [APPLY ...]]]
                                      [--exit [EXIT [EXIT ...]]]
                                      [--debug [DEBUG [DEBUG ...]]]

optional arguments:
  -h, --help            show this help message and exit
  --file [FILE]         .paxor file to open
  --apply [APPLY [APPLY ...]]
                        if a file was loaded, immediately load the crossover
                        modules
  --exit [EXIT [EXIT ...]]
                        exit after loading modules (only if --apply was given)

The options --file is probably fairly self-explanatory. Regarding the switch to --file <filename>: Users that did create shortcuts to "pulseaudio-crossover-rack <filename>" will now have to change these to "pulseaudio-crossover-rack --file <filename>"

The option --apply will try to insert the crossover from the given file after startup (of course this only works, if a filename was given with --file)

The option --exit only works, if --apply was given and will exit the program after the crossover modules were loaded.

I added these to allow proper scripting with the /usr/bin/pulseaudio-crossover-rack binary.

As always, have fun!
 
Hmmmm there is an asound.conf, which is an optional recommendation by Hifiberry for the HAT. Let's see what happens when I remove that. No, doesn't seem to make a difference. It's weird. The miniamp should be capable of 192kHz, so it does not seem to be some sort of autodetect issue. I have the right dtoverlay in the boot/config.txt as well. I had exactly this pi outputting higher sample-rates to HDMI as well.
 
Last edited:
/etc/pulse/daemon.conf:

Code:
# This file is part of PulseAudio.
#
# PulseAudio is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# PulseAudio is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.

## Configuration file for the PulseAudio daemon. See pulse-daemon.conf(5) for
## more information. Default values are commented out.  Use either ; or # for
## commenting.

; daemonize = no
; fail = yes
; allow-module-loading = yes
; allow-exit = yes
; use-pid-file = yes
; system-instance = no
; local-server-type = user
; enable-shm = yes
; enable-memfd = yes
; shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB
; lock-memory = no
; cpu-limit = no

; high-priority = yes
; nice-level = -11

; realtime-scheduling = yes
; realtime-priority = 5

; exit-idle-time = 20
; scache-idle-time = 20

; dl-search-path = (depends on architecture)

; load-default-script-file = yes
; default-script-file = /etc/pulse/default.pa

; log-target = auto
; log-level = notice
; log-meta = no
; log-time = no
; log-backtrace = 0

; resample-method = speex-float-10
; avoid-resampling = false
; enable-remixing = yes
; remixing-use-all-sink-channels = yes
; enable-lfe-remixing = no
; lfe-crossover-freq = 0

; flat-volumes = yes

; rlimit-fsize = -1
; rlimit-data = -1
; rlimit-stack = -1
; rlimit-core = -1
; rlimit-as = -1
; rlimit-rss = -1
; rlimit-nproc = -1
; rlimit-nofile = 256
; rlimit-memlock = -1
; rlimit-locks = -1
; rlimit-sigpending = -1
; rlimit-msgqueue = -1
; rlimit-nice = 31
; rlimit-rtprio = 9
; rlimit-rttime = 200000

; default-sample-format = float32le
; default-sample-rate = 192000
; alternate-sample-rate = 48000
; default-sample-channels = 2
; default-channel-map = front-left,front-right

; default-fragments = 4
; default-fragment-size-msec = 25

; enable-deferred-volume = yes
; deferred-volume-safety-margin-usec = 8000
; deferred-volume-extra-delay-usec = 0

realtime-scheduling = yes
realtime-priority = 5

And no daemon.conf in /home/pi/.config/pulse. The asound.conf has been removed. I tried Audacious and VLC as mediaplayer. Forcing no resamping on the mediaplayer also does not change things.
 
Last edited:
You will have to remove the semicolons at the beginning of the duke for lines to be active! ; starts a comment... :)


PS: pulseaudio can run higher sampling rates even if the output devices do not support that. PA will down/resample accordingly (which it has to do anyways if the backend is running float)