CamillaDSP - Cross-platform IIR and FIR engine for crossovers, room correction etc

I'm experimenting with channel labels and I think I have something that could work.
It's made up of two ideas. The first is this. The number of channels is first determined at the capture device, and then it can only change by adding a mixer. Since these are the only two places that can decide the number of channels, these are also the places to assign labels to those channels. The playback device also defines a number of channels, but this isn't independent since it must match the output of the pipeline.

The second idea is that the largest benefit of labels is to make the gui easier to use. So as long as the labels are available in the gui, the config format can stay mostly the same and still use numbers for the channels.

The capture device has a list of labels:
Screenshot 2024-07-10 213235.png

Mixers also have a list of labels for the output channels:
Screenshot 2024-07-10 213220.png
It still uses the channel number to select source and destination channels, but also shows the label for the selected channel. The input labels are extracted from the pipeline. In this proof of concept it simply searches the pipeline for a mixer step using this mixer. If it finds one, it uses the labels from there. If not, it falls back to just numbers. It's probably almost never happens, but it's allowed to use the same mixer in several pipeline steps. In this case, it will only show the input labels from the first step. Maybe good enough, let's see.

Filter steps in the pipeline use labels if available for selecting what channel(s) to process:
Screenshot 2024-07-10 213107.png

And the pipeline plot of course also use them:
Screenshot 2024-07-10 213154.png

The way the gui is designed, the labels have to be fairly short to fit in the layout.

The advantage of this approach is that it's very simple to implement in camilladsp itself. It only needs to accept the new labels properties, but doesn't have to care about them. The downside is that this doesn't make it any easier to write configs by hand.
 
Labels.
Looks really good, simple is best.
It appears that the labels are entered as a comma delimited list. You say "the labels have to be fairly short to fit in the layout" - how many characters are you allowing per label? 2 or 3 should be sufficient, however, the config for my Motu Ultralite Mk.5 has 18 channels for the Output Device (of which I use only 6). Creating the comma delimited list is the only downside I can see, but a list of ",,LB,RB,LM,RM,LH,RH," should label the channels appropriately.
Look forward to trying it out.
 
  • Like
Reactions: HenrikEnquist
It appears that the labels are entered as a comma delimited list.
That's only for now (because it was quick to get working), I'll change it for something easier to use.

how many characters are you allowing per label?
There is no limit for now but there likely should be one.

my Motu Ultralite Mk.5 has 18 channels for the Output Device (of which I use only 6)
I'm aware that many interfaces have a quite large number of channels. You should not be forced to give labels for all, only the ones you need.
 
  • Like
Reactions: Wirrunna
I tweaked an existing config by upping the Mixer from 4->6 but hadn't followed up yet in the Pipline... the Pipeline tab showed a red triangle. Went into the Pipline tab and used the graphing button without fixing the faults... bom...

//
 
Hi. I am back after a while to pick up where I left and update the latest to use the aggregate audio devices on macOS. Then I found that I am having a problem with the conf file that worked with older version. The error boils down to finding the matching playback format, trying to use macbook air speakers as the test output. I don't have any DAC handy yet. How can I fix this?
 
Yes this will work just fine. Good idea btw! I would suggest to build a pipeline where you first prepare the four channels you want, and then add a mixer to add the additional ones. You can invert the copies directly in the mixer.


There won't be any delay!
Hi everyone,

I wanted to share a quick update on my project with the HiFiBerry DAC8X and CamillaDSP. I received my components and tested the balanced output configuration as suggested. It works perfectly! The setup with CamillaDSP was straightforward, and the sound quality is fantastic. Thanks for the great advice!

Best,
Matthew
 
  • Like
Reactions: emailtim and k3rry