• WANTED: Happy members who like to discuss audio and other topics related to our interest. Desire to learn and share knowledge of science required. There are many reviews of audio hardware and expert members to help answer your questions. Click here to have your audio equipment measured for free!

Camilladsp vs Hifiberry DSP - what’s your take

RawDlite

Member
Joined
Dec 9, 2024
Messages
29
Likes
26
Hi,

I am running two setups side by side.
- Pi5 - Camilladsp - Allo Digone - rme adi-2 (via spdif)
- Pi4 - Hifiberry Digi2 + DSP Addon - rme adi-2 (via tos)

While they differ in nature, one being a software solution and the other a hardware device they serve the same usecase and so I think a comparison might be in order.

Cost:
While Camilladsp is free the Hifiberry DSP is around 70€.
The Digi2 + DSP Addon was about the same price as the Allo digione.
There is also the dac+ dsp that has the dsp onboard, provides a dac and can run in standalone mode.
All for around 70€.
I consider this affordable.

Setup/Ease of use:
Hifiberry provides Hifiberry OS and it does a great job to hide the complexity from the user. Hardly any setup is required and a fancy webgui is provided for the DSP functions including a basic room correction.
Setup of Camilladsp has become increasingly easy. There is a great install_cdsp script to get Camilladsp setup on picoreplayer.
Also moode provides a Camilladsp setup.
Yet I still tend to run into issues with Camilladsp samplerates and other stuff and have managed to break my setup on several occasions.

Getting the Hifiberry DSP setup to work on picoreplayer was a bit more challenging, but this was mainly due to the need to understand tiny core Linux first. I used the install_cdsp script as a template to write install_hbdsp.sh. This is still work in progress as i am still figuring out the inner workings of tiny core.

Features:
The features of the dsp are defined by the loaded profile. The profile is created in sigma studio. Hififiberry provides a somewhat limited profile.
The one thing that the dsp is missing for me is a convolver. The ADAU1451 is according to my limited understanding not the best option for fir filters as the dsp is fixed point. (What ever that means) Some fir filtering can be done, but it is not as straight forward as with Camilladsp.
If you think setting up Camilladsp is complicated, don’t bother with sigma studio.
The Hifiberry profile provides 2 filterbanks with 16 registers. There is a parser for filters generated by REW.
When using Hifiberry os these filterfiles can be upload via the gui.
I am not sure what options for crossover there are, I think it can be done with their 4channel amp.
Both Camilladsp and sigmatcpserver (the low level tool talking to the hardware) can be controlled over the network allowing to use gui or controller Programms running on network connected devices.

What is your take?
 
For me, both options have two drawbacks:

1) Linux and
2) relatively high boot times that seem to call for an always-on arrangement.

I have looked at HiFiBerry DAC+ DSP which once configured should be able to self-boot and run standalone. Perhaps it can also be programmed from within SigmaStudio with a USBi programmer in between but I’m not entirely sure.

Do you process external sources such as a CD player or TV toslink out?
 
1) Contrary to what you consider a drawback, Linux is the biggest plus in my book. ;-)
But then I am using Linux since '92.
So yeah, YMMV I guess. OTOH when you run Hifiberry OS, picoreplayer with jivelite or even moode there is hardly any touchpoint with the underlying Linux. Setup and operation all is done in the browser.
Is it Linux or don’t you like computers in your audio chain?
2) What do you consider high in boot times? My picoreplayer starts in 17sec (pi4) resp. 13sec (pi5) and those are systems with a lot of extensions installed. While that is not instant, compared to a tube amp or even the time spent putting a record on a player i would not consider this a high boot time. Even the Yamaha AVR I had took its idle time when power cycled. What are you using?
OTOH i generally don’t power down computers. The raspberry when idle hardly consumes any power so why power it down?
Don’t get me wrong i absolutely respect your statements. It’s just well a bit alien and surprising to me.
But then I opened this thread to get different perspectives.

Connecting a USBi programmer might be possible. There is contacts labeled eDAC on the pcp of the DAC+ DSP.
The DSP Addon uses a connector at the same spot in addition to the gpio connector. I don’t think there will be documentation and Hifiberry support is a bit reluctant to provide low level information.
But when you don’t plan to use a raspberry pi would a development board not be a better option?

Are you experienced in Sigma Studio?

I gave my complete CD collection away when I moved from my old flat. The space requirement and inconvenience was just not worth it. I stream high res from Qobuz and have half a terrabyte of audiofiles.
 
Maybe I should have written 'For my use case...' instead of 'For me...', sorry.

---

I have been looking into CamillaDSP and HiFiBerry in an attempt at creating a replacement for my DEQ2496 which I connect through toslink in/out.

When I read this

Yet I still tend to run into issues with Camilladsp samplerates and other stuff and have managed to break my setup on several occasions.

...I feel it's not really for me. I'm sure it can eventually be made to run reasonably stable, but so can a standalone HiFiBerry DAC+ DSP I presume, with near instant boot times as a bonus. For reference a DEQ2496 gives sound within around 1.5 seconds after powering it up. I run an external streamer and like to have the option of connecting one more non-USB digital source in the future which further complicates matters with regards to a pi-based replacement.

In general my comments were probably less about your setup than I intended. I apologize for rushing to post my views before trying to understand where you come from.

---

What is not entirely clear about your setup is why you use coaxial and toslink in both arrangements and not USB? Also why do you run two side by side? Could you perhaps elaborate a bit more on that?
 
You should be able to program the DAC+DSP directly (no Pi connected) using the USBi if you connect it to the right pins on the 40 pin header. I think it would be the SPI interface rather than I2C but I'm not sure.

Windows is a requirement for SigmaStudio - or was last time I tried. It requires the drivr for the USBi even if you're not using it, so won't run under Wine. I've used the free, time limited Windows VM image in VirtualBox.

I was disappointed HifiBerry never made an easy way to use the I2S header for extra inputs and outputs. It's not the eDAC header - that's the same I2S channel as the onboard DAC.
 
@Rednaxela
What is not entirely clear about your setup is why you use coaxial and toslink in both arrangements and not USB? Also why do you run two side by side? Could you perhaps elaborate a bit more on that?
I run two systems side by side, because tinkering with the setup is a big part of the hobby to me. Having two systems guarantees at least one is working while I mess around with the other.
The issue with USB is that the audio device disappears when the dac is switched off. This leads to problems with the rendering software trying to access a none exiting device. Using a transport hat like the digione or Digi2 is less trouble for my usecase. I use the Toslink output of Digi2 so I can switch between the players. Basically I am using the the adi-2 dac as a preamplifier.
In total I have 4 players distributed around the house. All running squeezelite connected to a central Lyrion Server (LMS) running in a docker container on my Synology NAS. I tried a lot of streamer solutions. I like Lyrion for its many features and its client server architecture.
For less technical users like my wife and visitors I develop control devices with physical input.
Like
and
These are still prototypes and once I have figured out what my actual requirements are I plan to build some nice, possibly wooden enclosures.

At the moment I am trying to decide whether I prefer the Hifiberry DSP over Camilladsp.
I just started learning about dsp programming and what it entails.
Also I am insecure whether IIR Filters is enough or whether I should look into what FIR Filter can be setup inside the limitation of the dsp.

@somebodyelse
Windows is a requirement for SigmaStudio - or was last time I tried. It requires the drivr for the USBi even if you're not using it, so won't run under Wine. I've used the free, time limited Windows VM image in VirtualBox.

I was disappointed HifiBerry never made an easy way to use the I2S header for extra inputs and outputs. It's not the eDAC header - that's the same I2S channel as the onboard DAC.
Thank you for clearing that up.

What I don’t understand is why you are looking at the Hifiberry Dsp+Dac when you do not want to connect a raspberry.
Would something like this
not be a better option?
 
What I don’t understand is why you are looking at the Hifiberry Dsp+Dac when you do not want to connect a raspberry.
Would something like this
not be a better option?
I'm not sure whether that was aimed at me or not. I picked one up to play with when it was heavily discounted. If I had an everyday use for it, it would probably be connected to a Pi. I've not seen the other board before, but it looks interesting. I wonder how it measures.
 
There is a version of the board available from Analog Devices.
A bit pricey but probably better documentation.
I have not looked into the details and I am anything but an expert.
Yet what is intriguing to me is the 4 channel in 8 channel out part.
I would be interested in doing crossover for the subwoofer and switching between different sources.
There is even switches that could be used to access functions.

From what I understood so far the Adau1452 is the same as the Adau1451 just with more memory.
So I I could train my sigma studio skills on the Hifiberry Dsp and when ready I can setup the evaluation board as a standalone device. My expectation is it being a evaluation board coming from Analog Devices it should at least not measure worse than the Hifiberry Boards.
But then proper measurements would be great.
 
I have both. Hifiberry does a reasonable job but has nowhere near the flexibility of Camilladsp,. I've used Hifiberry with a bedside speaker and smoothed out the response for an extreme nearfield situation. I've tried both in a small room using "real" audio equipment. Camilladsp with REW is a lot more geeky fun.
 
For geeky fun I am tinkering with the python code of the Hifiberry low level tools. So far they accepted 2 of my pull requests.
What are you thinking of where Camilladsp has more flexibility than Hifiberry DSP?
The flexibility of the Hifiberry Dsp is in using sigma studio.
Did use that?
Hifiberrys Job is in sugar coating the geeky part for users that like to click on fancy colorful buttons.
No disrespect.
With dsptoolkit and sigmatcpserver I am comfortably exploring the possibilities of the dsp.
Having samplerate conversion done in hardware is especially nice.

What are you running Camilladsp on?
How are you handling different samplerates?
 
Thank you for the explanation @RawDlite, makes sense.

The issue with USB is that the audio device disappears when the dac is switched off. This leads to problems with the rendering software trying to access a none exiting device.
Problems like these are one reason that keeps me from embracing the Linux/CDSP approach. Even though I’m sure it can all be fixed and/or worked around.

What I don’t understand is why you are looking at the Hifiberry Dsp+Dac when you do not want to connect a raspberry.
Would something like this
not be a better option?
At the risk of answering a question not directed at me - I have looked at it first as a means to adding optical in/out with ASRC to a CamillaDSP based solution. Then I dropped the idea. Then someone told me it could be made to run standalone. Started looking at it again, and took on a project this fall to implement a microcontroller for the user facing side of things, with the DAC+ DSP as the audio back end. Waited with ordering one until I got the microcontroller part functional enough for a first integration, but now that I have reached that point I am exploring the option of implementing the DSP part on the microcontroller too, ingesting the toslink stream using this component and outputting it through this one. It’s still very early days with lots of (to me) unknowns. It might lead to nothing, but if I can get everything connected I feel I’d be able to eventually create exactly what I’m after.

Coming back to your question, from a hardware perspective the DAC+ DSP looks like a very elegant unit that seems to have everything to serve my needs as an audio back end. It’s small, not too expensive, and sufficiently expandable. In theory it could play the same role as the evaluation boards you linked to (thanks for that!), it’s just not being marketed that way which is why documentation and support for my use case are a bit lacking. I might return to it or the evaluation boards indeed should I find out that microcontroller based DSP is a dead end street.

At the moment I am trying to decide whether I prefer the Hifiberry DSP over Camilladsp.
If I were set on 1) pi-based streaming and 2) having DSP at the source, and 3) see Linux as the opposite of a stumbling block, I believe I’d go all in on CamillaDSP and do everything it takes to make it stable and just work. On paper it’s the most powerful and versatile option of the two and the most elegant one hardware wise and in many respects software wise too.

Out of interest, what makes you forego the RME’s DSP capabilities?
 
The RME's DSP is limited to 5 Bands and these are restricted Band 4 and 5 can not go below 200Hz.
Also setting the filters with the 2 rotary encoders is super fiddly and I always forget which knob to turn or press and then mess up my settings. There is a remote application for the iPad and that helps. But then the filter parameter still have to be typed in manually.
Either the CDSP or the Hifiberry DSP will go into the Livingroom once running stable, while ADI-2 stays in the bedroom as it also works as a headphone amplifier.

Microcontroller based DSP sounds very interesting. What microcontroller are you using? ESP32? Are you coding in assembler or C? Is there more documentation on what you are doing?
I am lowkey on the lookout for a simple DRC solution for a friend.
I looked at https://github.com/freeDSP/freeDSP-aurora but the project seems to be abandoned.
Also it is oversized for my requirements. I would only need digital in, digital out (Chanel 1+2) and minimal one analog out (Chanel 3) for a subwoofer.

For now I am quite happy with the Hifiberry Dsp. It is a great starting point for me to get in to sigma studio dsp coding.
Also it is running stable while I messed up my Camilladsp setup again.
 
If you are willing to wait, I might have something right up your alley:
 
Last edited:
The RME's DSP is limited to 5 Bands and these are restricted Band 4 and 5 can not go below 200Hz.
Very recognizable. This is what keeps me from buying one and calling it a day. In basically every other way it is my dream device.

Also setting the filters with the 2 rotary encoders is super fiddly and I always forget which knob to turn or press and then mess up my settings.
Also very recognizable. On the other hand the fact that the option exists at all makes it truly stand out in my book. It ensures that everything around it can break or go obsolete and the unit will still be functional. It’s what I value very much in my DEQ2496 and hope to achieve with my little project as well.

There is a remote application for the iPad and that helps. But then the filter parameter still have to be typed in manually.
Either the CDSP or the Hifiberry DSP will go into the Livingroom once running stable, while ADI-2 stays in the bedroom as it also works as a headphone amplifier.
I see. Out of interest what will you connect your streamer/DSP solution to in that case?

Microcontroller based DSP sounds very interesting. What microcontroller are you using? ESP32? Are you coding in assembler or C? Is there more documentation on what you are doing?
ESP32 and C/C++. In the context of the initial plans (separate audio back end) that seemed to be a fine choice. With the new direction it might turn out to be suboptimal, but that’s ok. Pretty much everything about it is new to me so I see it as an exciting educational exercise too. I feel I have three big hurdles left to take before I can share something worthwhile.
 
I really like the RME Adi-2, since my listening volume in the bedroom is usually quite low I esp. like the adaptive loudness feature it has. Also the separate audio out for IEMs is nice.

The other systems are an Audiphonics Rspdac Evo-Sabre Pack connected to Genelec 8030.
And a SMSL D-6s connected to NCore NC400 Monoblocks driving the Floorstanders. (ASW Genius 410)
The integrated design of the Raspdac enclosure will make it difficult to add a dsp module there.
So this setup will probably run Camilladsp. I am thinking of building a switch that will disable Camilladsp and restart squeezelite with the DACs audio device so I have a fallback option.
The other player is mounted on the back of a 7inch Display. There is enough space for a stack of raspberry pi4, Digi2 and the dsp Addon. I really like the jivelite gui giving access to all the advanced features of LMS.

Just had a go at Sigma Studio. Having a graphical Interface seems easy on the first glance, but then I wonder what is what and why it’s not working. I much prefer a commadline interface and some source code I can dig into.
I got the dsp project loaded in sigma studio and connected to the dsp via sigmatcpserver.
I could fiddle with the balance but that was as far as I got. Communication with the DSP seems to be one way only from sigma studio to the dsp. When changing parameters in the dsp with dsptoolkit those changes where not reflected in sigma studio. May be I am doing something wrong.
I am still searching for a way to see what parameters, filters etc are actually set in the dsp and not what some program thinks it has set. I know how to read register values but those values would need a translation to be useful.
 
I used the Hifiberry DSP (connected to a DIGIPro 2) and still use CamillaDSP. As much as I tried to like the Hifiberry board and think it should be the technically better solution, it was and probably still is held back by a serious lack of (software) support. To put it shortly: it's buggy as hell. Sometimes it worked, quite too often I had audio problems with the Hifiberry DSP. All kinds of audio artefacts, sometimes loud noises that I felt could hurt my ears and my equipment. Apart from that, HifiberryOS just lacks some usefull features, like easy entry of REW profiles.

CamillaDSP on the other hand has served me well for quite some time now. It was a bit hard to get it working with PiCorePlayer at first. But after that, I never had any issues with it. Still with the Hifiberry DIGIPro2, but the DSP add-on has now been removed (physically). I think CDSP is a truly marvelous solution.
 
Interesting take.
Your setup is identical to mine. I am with you on HifiberryOS lacking useful features.
I wrote an install script to setup hifiberry-dsp on picoreplayer. It can be found in the new contrib directory of the hifiberry-dsp repository. I apply REW filters on the command line with
Bash:
dsptoolkit apply-rew-filters <rew-filter-file>
on the command line. So maybe you would like to test this.

Your head up for CDSP encourages me. Basic setup in piCorePlayer was easy enough with install_cdsp.sh script.
While I got the setup working the dac connected via usb. No luck with the digione yet.
More documentation reading required.
 
i have used dac+dsp hifiberry and use now only camilladsp.

dac+dsp is easy to use with hifiberryos, but rigid ; modifying the dsp is possible with sigma studio, but it takes time to understand and some thing is impossible to do, for exemple croosfeed. also it is fragile, I burned the eprom while flashing...

so for me dsp is ok as long as the basic functions offered are suitable. if you want more CamillaDSP is better, even perfect!
 
Last edited:
... some thing is impossible to do, for exemple croosfeed. also it is fragile, I burned the eprom while flashing...
I have recently got dac+ dsp board. And I managed to implement Meier natural crossfeed in SigmaStudio. It is a proof of the concept, it has only a fixed crossfeed level (medium). Now that I got it to work, I'll try to make it variable...

Meier 2024-12-10 031843.jpg
 
I have recently got dac+ dsp board. And I managed to implement Meier natural crossfeed in SigmaStudio. It is a proof of the concept, it has only a fixed crossfeed level (medium). Now that I got it to work, I'll try to make it variable...

View attachment 415686
Good work!
I said impossible to do, I should have said not practical... you will see that, even if it is possible to change the parameters on the fly from sigma studio, it is another thing to do it with a web interface, because hifiberryOs will not allow you to do it outside from his standard dsp program. you would have to code...

the only thing where the dac+dsp solution is superior is when used alone, because in 2 seconds it is operational. perfect for crossover / eq.

look at my camilladsp pipeline, with 8 channels output soudcard, Streamer, toslink, line in,
Capture d’écran du 2024-10-31 11-01-18.png
crossfeed , tone control, convolver for headphones ans loudspeakers etc etc
 

Attachments

  • Capture d’écran du 2024-12-22 12-50-52.png
    Capture d’écran du 2024-12-22 12-50-52.png
    163.6 KB · Views: 47
Last edited:
Back
Top Bottom