• 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!

RPi4 + CamillaDSP Tutorial

Hov

Member
Forum Donor
Joined
Mar 28, 2020
Messages
61
Likes
19
I just reinstalled Volumio and FusionDSP on my Pi and it's still buggy af.
I can access CamillaDSP a single time and then I can't connect to the web gui anymore. It also said that the backend is offline so it didn't even work.
This is a little odd, I've had 0 issues accessing the interface, making and saving changes, etc. Can you provide more detail about your setup? It is really as easy as flashing the SD card and popping it in. Earthing else is selectable in the menus. It seems like you aren't making it far enough to even properly try it, which is a shame, cause it's quite good. Hopefully we can help you out with more info and detail.
 

juliangst

Addicted to Fun and Learning
Joined
Dec 11, 2021
Messages
957
Likes
980
Location
Germany
This is a little odd, I've had 0 issues accessing the interface, making and saving changes, etc. Can you provide more detail about your setup? It is really as easy as flashing the SD card and popping it in. Earthing else is selectable in the menus. It seems like you aren't making it far enough to even properly try it, which is a shame, cause it's quite good. Hopefully we can help you out with more info and detail.
I already asked the folks on Volumio forums about those issues. Couldn’t fix the issue but it’s not a big problem for me.
MoOde works perfectly fine and I’ll switch to a windows based mini Pc anyways to do Dirac Live
 

lamode

Member
Joined
Apr 5, 2019
Messages
19
Likes
30
I just reinstalled Volumio and FusionDSP on my Pi and it's still buggy af.
I can access CamillaDSP a single time and then I can't connect to the web gui anymore. It also said that the backend is offline so it didn't even work.

Working fine here, RPi4, Volumio 3.378, FusionDSP 1.0.23

I just set up the PEQ parameters for my speakers and headphones and can switch between them on the fly. No issues.
 
  • Like
Reactions: MCH

Unkown

Member
Joined
Oct 17, 2022
Messages
10
Likes
2
I have a Raspberry Pi (2GB) setup as a Tidal Connect player. https://forums.raspberrypi.com/viewtopic.php?t=297771
I was looking for a DSP "driver" for some basic room corrections in a stereo setup.

I've quickly read through the first couple of post so I might have missed or misunderstood something. But do I setup my USB DAC as the audio device in Camilla and the software/virtual loop back device as my audio device in the Tidal Connect config? So my pathway will look this: Tidal Connect => Camilla DSP => USB DAC.

Interesting to know that I can add more streaming configs to the Pi. Are there any ChromeCast options out there?
 
OP
M

mdsimon2

Major Contributor
Forum Donor
Joined
Oct 20, 2020
Messages
2,478
Likes
3,316
Location
Detroit, MI
Your USB DAC will be the CamillaDSP playback device but the CamillaDSP capture device will be an ALSA loopback.

Set Tidal Connect to output to one end of the ALSA loopback (hw:Loopback,1) and then set your CamillaDSP capture device to the other end (hw:Loopback,0).

Michael
 

superweasel

New Member
Joined
Sep 9, 2022
Messages
1
Likes
1
Interesting to know that I can add more streaming configs to the Pi. Are there any ChromeCast options out there?
I'm not aware of any usable software-based ChromeCast receivers. I currently use a ChromeCast Audio connected to the TOSLINK input of an Ultralite mk5 which works well.
 

Unkown

Member
Joined
Oct 17, 2022
Messages
10
Likes
2
Your USB DAC will be the CamillaDSP playback device but the CamillaDSP capture device will be an ALSA loopback.

Set Tidal Connect to output to one end of the ALSA loopback (hw:Loopback,1) and then set your CamillaDSP capture device to the other end (hw:Loopback,0).

Michael
I've managed to setup the pipeline and can get an Audio stream send from the Tidal Connect app through CamillaDSP out to my Topping E30 DAC.
I am running Rasbian OS (Raspberry Pi Stock OS) and have to use the ARMv7 version of CamillaDSP. The strings for my audio device also look a bit different to yours: "Loopback: PCM (hw:0,0)" and "E30: USB Audio (hw:1,0)" as the "hw: Loopback,0" or the "hw:E30" don't seem to work.

Every time I hit the Apply DSP button I receive this error: Playback error: ALSA function 'snd_pcm_open' failed with error 'ENOENT: no such file or directory'
Changing the active config to a different file and back again fixes this error. After a bit of reading I believe it could have something to do with Exclusive mode, but not sure if this is on the DAC or the Loopback device. Not sure how to handle it either.

I've got to do some more reading in how to build and apply these filters as I can't seem to make them work at the moment. Any filter or mixer applied don't have an effect, either in the audio output or the graphical volume display. Do I have my channels or loopback wrong ?

The Tidal Connect playback-device is set to "Loopback: PCM (hw:0,1)"
The Camilla DSP capture device is set to "Loopback: PCM (hw:0,0)"
The Camilla DSP playback device is set to "E30: USB Audio (hw:1,0)"
 

Attachments

  • test_e30_streamer.txt
    905 bytes · Views: 47
OP
M

mdsimon2

Major Contributor
Forum Donor
Joined
Oct 20, 2020
Messages
2,478
Likes
3,316
Location
Detroit, MI
Are you using the most recent version of camillagui? If so the symlink functionality is disabled by default. You need to edit ~/camilladsp/camillagui/config/camillagui.yml and change update_config_symlink to true.

Interesting on the device names. If you run aplay -l and arecord -l what does it give you?

Michael
 

Unkown

Member
Joined
Oct 17, 2022
Messages
10
Likes
2
Are you using the most recent version of camillagui? If so the symlink functionality is disabled by default. You need to edit ~/camilladsp/camillagui/config/camillagui.yml and change update_config_symlink to true.

Interesting on the device names. If you run aplay -l and arecord -l what does it give you?

Michael
Thanks for all your hard work and your support on this forum. I am sure many noobs like me can throw out more questions than can be answered.

I am using CamillaDSP version 1.0.1, not sure where to find the GUI version. I haven't updated anything and used your example code for installation.

Regarding the device names, I am not sure what is going on in the background. I can change the playback device name from "E30: USB Audio (hw:1,0)" to "E30: USB Audio (hw:2,0)" without a problem. I am wondering if there is a partial string search happening to find these devices.

Although I have a stream coming in, sound coming out and a dancing vu meter in CamillaDSP, nothing of the changes made within the GUI or config file seem to have any effect. including the build in mute or volume control buttons. I do believe this ARMv7 is a 32 bit version as the RaspbianOS and the Tidal Connect app are ARMv7 versions, so things might have worked out differently, or more likely that I have messed up something.

Attached is a list of devices

Edit: It seems only applicable on the Tidal Connect config file which needs a specific file name format.
I have things running within CamileDSP with capture device "hw:Loopback,0" and playback device "hw:E30" and mixer and filter are working, but not volume control. (which isn't a problem)
There must have been something wrong with that file, as I am using a different file which doesn't give me the Playback error: ALSA function 'snd_pcm_open' failed with error 'ENOENT: no such file or directory'.
 

Attachments

  • devices.txt
    2.6 KB · Views: 57
Last edited:
OP
M

mdsimon2

Major Contributor
Forum Donor
Joined
Oct 20, 2020
Messages
2,478
Likes
3,316
Location
Detroit, MI
The volume control is a separate issue from being unable to change configurations. In order for the volume control to work you need to define a volume filter and assign it to your pipeline. You can look at any of the example configuration files that I attached to the tutorial other than the ones for the Okto as examples.

If you run nano ~/camilladsp/camillagui/config/camillagui.yml does it show the symlink as being enabled? And can you share the ExecStart line you are using for camilladsp.service?

Michael
 

Unkown

Member
Joined
Oct 17, 2022
Messages
10
Likes
2
Not sure if you have seen my edit in the meantime:
"
Edit: It seems only applicable on the Tidal Connect config file which needs a specific file name format.
I have things running within CamileDSP with capture device "hw:Loopback,0" and playback device "hw:E30" and mixer and filter are working, but not volume control. (which isn't a problem)
There must have been something wrong with that file, as I am using a different file which doesn't give me the Playback error: ALSA function 'snd_pcm_open' failed with error 'ENOENT: no such file or directory'.
"

update_symlink: true in the GUI config file

Camilla DSP ExecStart =/home/user/camilladsp/camilladsp -o /hme/user/camilladsp/camilladsp.log -p 1234 /home/user/camilladsp/active_config.yml
Camiila GUI ExecStart = python3 /home/user/camilladsp/camillagui/main.py
 

Unkown

Member
Joined
Oct 17, 2022
Messages
10
Likes
2
Is there a way to control the gain setting of the incoming audio stream ? It "constantly" seems to be clipping ever so slightly.
 

phofman

Senior Member
Joined
Apr 13, 2021
Messages
489
Likes
319
There must have been something wrong with that file, as I am using a different file which doesn't give me the Playback error: ALSA function 'snd_pcm_open' failed with error 'ENOENT: no such file or directory'.
Have you checked what device name is actually written in the CDSP config file? My 2 cents there is the problem.
 
OP
M

mdsimon2

Major Contributor
Forum Donor
Joined
Oct 20, 2020
Messages
2,478
Likes
3,316
Location
Detroit, MI
Sounds like it is working now?

When you say clipping are you saying the CamillaDSP clipped sample meter is showing clipping? Or you are hearing clipping? If it is the clipped sample meter in CamillaDSP enabling volume control and reducing the level a few dBs will eliminate the clipping.

Michael
 

Unkown

Member
Joined
Oct 17, 2022
Messages
10
Likes
2
Sounds like it is working now?

When you say clipping are you saying the CamillaDSP clipped sample meter is showing clipping? Or you are hearing clipping? If it is the clipped sample meter in CamillaDSP enabling volume control and reducing the level a few dBs will eliminate the clipping.

Michael
Yes, it's the sample meter in CamillaDSP and the clipping counter.

So the volume and gain filters are different filters? But filters only get applied to the output and not the input? As I can't find a setting to pick the channel for the input stream.
It might be nothing, and just a rounding difference with CamillaDSP, but I can't tell at this point in time.

I might have to take a look and check if there is a way within the Tidal Connect application to set a fixed volume/gain level. I've read many comments that this application doesn't respond to the Tidal App volume control.
 
OP
M

mdsimon2

Major Contributor
Forum Donor
Joined
Oct 20, 2020
Messages
2,478
Likes
3,316
Location
Detroit, MI
Yes, it's the sample meter in CamillaDSP and the clipping counter.

So the volume and gain filters are different filters? But filters only get applied to the output and not the input? As I can't find a setting to pick the channel for the input stream.
It might be nothing, and just a rounding difference with CamillaDSP, but I can't tell at this point in time.

I might have to take a look and check if there is a way within the Tidal Connect application to set a fixed volume/gain level. I've read many comments that this application doesn't respond to the Tidal App volume control.

There should not be a difference between gain and volume adjustment. I missed that you had gain attenuation applied in your config but it also looks like you do not have it applied on one channel which is likely causing clipping. Can you post the actual config that you are currently using?

Applying on input or output really doesn't matter. CamillaDSP takes data and processes it using 64 bit floating point. As a result there should not be any clipping issues as long as you have enough attenuation by the time it reaches the output. For example you could have have a +20 dB boost but as long as you offset with gain / volume attenuation you should not clip. Also important to note that resampling alone is enough to cause clipping if you do not apply 1-2 dB of attenuation.

A point that I would need some clarification from @HenrikEnquist on is I am pretty sure CamillaDSP cannot detect source clipping, so if your Tidal output is clipped that should NOT show up as a clipped sample in CamillaDSP. Unless of coursing you are adding processing in CamillaDSP that causes clipping and it would seem reasonable that if you were starting from a clipped source that it would be easy to clip in CamillaDSP as by definition you are starting from a very high level.

Michael
 

Unkown

Member
Joined
Oct 17, 2022
Messages
10
Likes
2
I might be misinterpreting something, but isn't the VU meter representing input (Tidal Stream) and output (DAC stream)?

I have created a new clean file with a gain setting of -6dB on both channels. I can visual see the output not reaching clipping level, but the "input" still clipping minutely and counting. Since visually the clipping is hardly noticeable on that scale I was wondering if this might be a rounding thing with the algorithm behind the visualisation.

Non the less, it could also indicate that the Tidal stream is putting out a highly attenuated signal. Since this application is a clone of the ifi streamer software, it could also has something to do with the pipeline of the ifi product.

I can show the config file and try to make a screen shot / video of the clipping at a later stage but it's packed away for the moment.

Edit:
Looks like I got things wrong again. Sorry for the confusion. The clipping is happening on the output channel, and the count is linked to the output as well I believe. Might be a GUI thing, that both input and output are flashing red when clipping is detected. Still wondering why the input levels are so high that a 1-2dB difference is causing it to clip. Would expect from Tidal to not adhere to the loudness war.
 
Last edited:

phofman

Senior Member
Joined
Apr 13, 2021
Messages
489
Likes
319
Which file are you referring to? The config file that you load / set as default?
Well, I do not run that setup, but IIUC the GUI generates a text config file which CDSP subsequently uses. And if CDSP complains about a nonexisting device, then IMO the first troubleshooting step would be to look at the generated config, what device was written by the GUI.
 
Top Bottom