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

It's the systems phase response that matter. It's OK with a change as long as you change it back 😉 different parts in the system change it back and forth in different frequency regions. It adds/subtracts up as the signal travel through the system.

REW contains an EQ section that works solely with IIR (biquads) - the result of such EQ can be turned into a .wav file which can be convoluted as a FIR filter. But still, in REW, the only way you can obtain EQ in the .wav file is by IIR filters. IIR filters follow minimum phase laws i.e. phase follow FR. If you want to do phase manipulation that don't follow minimum phase laws, you need to resort to other tools. rePhase is a good one.

Just because one happen to use FIR filters, it does NOT mean that phase is "put back to zero" - FIR isn't by itself a phase resetter. It's means to achieve phase control, which IIR don't have. But somehow you need to design that phase alteration (rePhase!)

//
 
Last edited:
It's the systems phase response that matter. It's OK with a change as long as you change it back 😉 different parts in the system change it back and forth in different frequency regions. It adds/subtracts up as the signal travel through the system.

REW contains an EQ section that works solely with IIR (biquads) - the result of such EQ can be turned into a .wav file which can be convoluted as a FIR filter. But still, in REW, the only way you can obtain EQ in the .wav file is by IIR filters. IIR filters follow minimum phase laws i.e. phase follow FR. If you want to do phase manipulation that don't follow minimum phase laws, you need to resort to other tools. rePhase is a good one.

Just because one happen to use FIR filters, it does NOT mean that phase is "put back to zero" - FIR isn't by itself a phase resetter. It's means to achieve phase control, which IIR don't have. But somehow you need to design that phase alteration (rePhase!)

//
When I measure my speakers I get vastly different measurements in REW depending on where I am in the room. So room correction will only be valid if I am at one spot in the room all the time. And I am never at one place very long. Makes wonder what is the point.
 
REW contains an EQ section that works solely with IIR (biquads)
Ah! that makes sense then, thank you very much for your help so far 😀
But somehow you need to design that phase alteration (rePhase!)
i will have a look at rephase, i thought REW would be enough >.< thanks

When I measure my speakers I get vastly different measurements in REW depending on where I am in the room. So room correction will only be valid if I am at one spot in the room all the time. And I am never at one place very long. Makes wonder what is the point.
for a pc setup with nearfield monitors its quite a perfect solution, atleast it sounds like it 🙂 but you are right, different spots sound probably even worse after correcting the FR for the main position

---

is there maybe a better tool for creating convolution files than REW? the making of matching fr responses to targets seems a little rudimentary overall in REW
 
Hello...

I'am trying to update my repo. https://github.com/Lykkedk some, and i have installed the newest CamillaGUI
I also updated CamillaDSP to the newest 😊 ... Well i didn't update the "Howto" yet...

Versions.png


It seem's to be working, but haven't tried it here on my test-rig with real FIR filters etc... only the "native" gain, loudness etc... stuff.
Should i be updating the PyCamillaDSP to the newest also ? And the pyCamillaDSP_plot ?

I use thoose now ::

py3.8-pycamilladsp-0.6.0.tcz
py3.8-pycamilladsp-plot-0.6.1.tcz

cdsp1.0.1.png


Jesper.
 
I am officially selling my 4x10HD to get something better. Is there a beginners guide to try CamillaDSP? I would like to use it in a 3-way but up to a five-way horn speaker. Budget is currently 700 euro. I have one 2-channel DAC already, and active subs with its own crossovers, FIR is not so important yet.
Last time I tried PC based crossovers I got mixed up sample rates and almost blew up my speakers.

edit: I found this now. https://github.com/HEnquist/camilladsp#background
 
Last edited:
If 8ch is enough I wonder if the latest Topping DM7 could be a good choice? Connecting multiple DACs to a computer by individual USB will work but there are questions about synchronisation... A one box, 8ch solution should not have that issue.

There will be no sampling rate issues with Camilla as it can only do one at a time ;-)

//
 
If 8ch is enough I wonder if the latest Topping DM7 could be a good choice? Connecting multiple DACs to a computer by individual USB will work but there are questions about synchronisation... A one box, 8ch solution should not have that issue.

There will be no sampling rate issues with Camilla as it can only do one at a time ;-)

//
Well, I learned this first hand when trying to play netflix from a browser. Apprently the samplerate was different than in windows and hell broke loose.
I had the idea to get several cheap but identical dacs and use a toslink splitter which optically splits the light to several toslink outputs.
 
That is how I run my system - I use a RME digface opto out. Hooked up to a Mic Mini. And DACs using opto.

But there is still a potential sync problem - if you e.g. mix DAC using sample rate converter and one that don't, they will not be synchronous.

And you cant use a toslink splitter because then all DACs get the same signal.... no filters no XOs...

//
 
That is how I run my system - I use a RME digface opto out. Hooked up to a Mic Mini. And DACs using opto.

But there is still a potential sync problem - if you e.g. mix DAC using sample rate converter and one that don't, they will not be synchronous.

And you cant use a toslink splitter because then all DACs get the same signal.... no filters no XOs...

//
Right. This was for the analog crossover.
 
I am officially selling my 4x10HD to get something better. Is there a beginners guide to try CamillaDSP? I would like to use it in a 3-way but up to a five-way horn speaker. Budget is currently 700 euro. I have one 2-channel DAC already, and active subs with its own crossovers, FIR is not so important yet.
Last time I tried PC based crossovers I got mixed up sample rates and almost blew up my speakers.

edit: I found this now. https://github.com/HEnquist/camilladsp#background
https://www.audiosciencereview.com/forum/index.php?threads/rpi4-camilladsp-tutorial.29656/
Have you seen this, yet? Very good tutorial for Pi4 based CamillaDSP. Motu Ultralite Mk5 looks like the best bet if you want up to 10 channels.
 
I am officially selling my 4x10HD to get something better. Is there a beginners guide to try CamillaDSP? I would like to use it in a 3-way but up to a five-way horn speaker. Budget is currently 700 euro. I have one 2-channel DAC already, and active subs with its own crossovers, FIR is not so important yet.
Last time I tried PC based crossovers I got mixed up sample rates and almost blew up my speakers.

edit: I found this now. https://github.com/HEnquist/camilladsp#background
Just an FYI, If you want to get your feet wet with an interface you can purchase now (the MOTU Ultralite mk5 is backordered) the Behringer UMC1820 has 10 output channels. Performance will be on par with the 4x10. It's about half the cost of the MOTU, and you can easily upgrade later.
 
Yet one 😉

- The symbol on a filter to show it's characteristics is also present at the end of the pipeline. But here deviates the function, and instead a topology is shown.

I would think it would be very interesting to see the complete signal handling from the pipeline as a level/freq, like for a biquad.
But also the topology 🙂 two buttons required?

//
The first one is fixed, I found a better icon for the pipeline diagram.

The second one is something I want to add, but it will take some work to get there. The challenge is that the pipeline is so free. Any input signal can be routed to contribute to any output, and it can even take several paths to get there. The best plan I have come up with is a plot where you select the input and output channels, and the plot then shows the frequency response for the path between these two.
 
  • Like
Reactions: TNT
Sorry 😔 ... How about a tick box saying candidate for each filter in the PL. The idea is to then have a main switch in the vicinity of the DSP update button so that one can activate/deactivate the candidate(s) so to compare two different configurations in a quick manner.

//
This would be a mess to implement, but there is already a way to quickly switch configs. At the moment it's only shown in the compact view. The compact view should of course only show a subset of the functionality in the full view. I'll add the missing stuff to the full view too. Probably in a new tab.
Re: should "Apply to DSP" save to file?

I think it should do only this. But a indicator that you are now playing something that is not saved to file would be good.

//
I'm inclined to agree. I'm thinking to make it into three buttons: "Apply to DSP", "Save to file" (quick way to save to the active file, shows the filename in the tooltip), and "Apply and save" that combines the two.

A mono button would be so convenient 🙂

//
I want to make it possible to add some custom controls to the GUI via the GUI config. This could be used to implement stuff like a mono switch. I'm planning some changes for the next version of camilladsp that will make this much easier.
 
  • Like
Reactions: TNT
Sorry wrong files. this is the right one
I don't think you actually need this. IIUC it's mainly there to allow the octo to accept stereo input. Camilladsp can give it exactly the 8-channel data it needs, should just work.

I think your problem is that you haven't configured the loopback as the default output device. I think that is easier if you keep pulseaudio, but I haven't tried running a graphical desktop without it (and I wouldn't expect it to be a very pleasant experience).
 
1. but i was wondering how the Volume/Loudness filter work, is it possible to use them in moode? i would be interested in dithered volume control and loudness adjustments, i just saw that it needs to be controlled through a websocket which i dont quite understand, does somebody with Moode use those volume filters??

2. Also a little issue that i noticed, which is a bit annoying is that right at the end of a song (it happens in like the last 3 seconds of a song) camilladsp sometimes stops, starts, stops, starts, stop starts the music, i think it just happens if there is no other music file in the queue, if i start to play an album i dont have this issue, this also just happens if resampling is enabled if this helps troubleshooting
is it possible that i do need more cpu to fix this? i leave mpd and camilladsp running in just one core and with resampling to 192k the core is around 85% utilized, i guess i can check the cpu utilization right at the stuttering, maybe it jumps to 100%
These seem quite moOde specific, could you try to ask in the moOde support Forum?
 
Yes you should update both pycamilladsp to v1.0.0 and pycamilladsp-plot to v1.0.1!
Great...

I upgraded the repo. https://github.com/Lykkedk/SuperPlayer-v8.0.0---SamplerateChanger-v1.0.0
To now include the newest CamillaDSP v1.0.1

I'am busy creating new .tcz's for pycamilladsp v1.0.0 and pycamilladsp-plot v1.0.1
I will update the CamillaGUI https://github.com/Lykkedk/SuperPlayer-v8.0.0--CamillaGUI-v0.6.0 soon also, just need to test the new pycamilladsp & pycamilladsp_plot a little more before i do.

Jesper.
 
  • Like
Reactions: wineds and TNT