Thanks for the logs! This probably has something to do with the change to non-blocking reads in the File backend. I'll look into it!I have some problems getting camilladsp with the alsa-cdsp plugin to run smoothly.
Could you give 1.0.0-alpha4 a quick try? That's the last one before that change.
Thanks for testing!Just to complete the test, Windows also plays without any issues.
Just tried it and it runs perfectly with rc2 on my laptop.Thanks for the logs! This probably has something to do with the change to non-blocking reads in the File backend. I'll look into it!
Could you give 1.0.0-alpha4 a quick try? That's the last one before that change.
Try using "Stdin" instead of "File" for the capture type. Don't think it should make much difference but worth trying.
With 1.0.0-alpha4 the log entries in camilladsp.log go away and there is no noticeable stuttering anymore. The alsa-cdsp plugin still complains about XRUNs though. strange. Changing from type File=>/dev/stdin to type Stdin does not make any difference.
Edit: btw: I was running 0.6.3 up to yesterday, same complaints about XRUNs by alsa-cdsp, but no camilladsp stuttering/errors logged.
Edit: btw: I was running 0.6.3 up to yesterday, same complaints about XRUNs by alsa-cdsp, but no camilladsp stuttering/errors logged.
Just confirmed the hickups with lates rc2 on another machine, here's the log:
And may I drop a feature request with very little urgency: On this computer I use a focusrite scarlett 18i20 which can handle between 16 and 20 playback channels. So I needed to insert a mixer with 16 output channels to make it work. Maybe you could just ignore the excess channels when pipeline output channels is less than soundcard channels? As I said, not urgent and can be worked around.
Code:
2022-02-11 18:55:18.199867 INFO [src/bin.rs:711] CamillaDSP version 1.0.0-rc2
2022-02-11 18:55:18.199911 INFO [src/bin.rs:712] Running on linux, x86_64
2022-02-11 18:55:18.199932 DEBUG [src/bin.rs:754] Read config file Some("/home/t-5/.config/PaXoverNG/camilladsp.config")
2022-02-11 18:55:18.200075 DEBUG [src/bin.rs:773] Config is valid
2022-02-11 18:55:18.200092 DEBUG [src/bin.rs:857] Wait for config
2022-02-11 18:55:18.200104 DEBUG [src/bin.rs:890] Config ready
2022-02-11 18:55:18.200188 DEBUG [src/bin.rs:213] Using channels [true, true]
2022-02-11 18:55:18.200244 DEBUG [src/filters.rs:450] Build new pipeline
2022-02-11 18:55:18.200281 DEBUG [src/processing.rs:19] build filters, waiting to start processing loop
2022-02-11 18:55:18.200314 DEBUG [src/filedevice.rs:543] Creating resampler
2022-02-11 18:55:18.200331 DEBUG [/home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/rubato-0.10.0/src/synchro.rs:89] Create new FftResampler, fft_size
_in: 588, fft_size_out: 1280, cutoff: 0.9753752
2022-02-11 18:55:18.200407 DEBUG [/home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/rubato-0.10.0/src/sinc.rs:39] Generate sincs, length: 588, oversam
pling: 1, normalized by: 1.025246515539018
2022-02-11 18:55:18.200586 DEBUG [/home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/rubato-0.10.0/src/synchro.rs:310] Create new FftFixedOut, fs_in: 4
4100, fs_out: 96000 chunk_size_in: 2048, channels: 2, fft_size_in: 588, fft_size_out: 1280
2022-02-11 18:55:18.200662 DEBUG [src/bin.rs:333] Capture thread ready to start
2022-02-11 18:55:18.248669 DEBUG [src/alsadevice.rs:377] Playback: supported channels, min: 16, max: 20, list: [16, 20]
2022-02-11 18:55:18.248725 DEBUG [src/alsadevice.rs:378] Playback: setting channels to 16
2022-02-11 18:55:18.248801 DEBUG [src/alsadevice.rs:382] Playback: supported samplerates: Discrete([44100, 48000, 88200, 96000])
2022-02-11 18:55:18.248837 DEBUG [src/alsadevice.rs:383] Playback: setting rate to 96000
2022-02-11 18:55:18.248879 DEBUG [src/alsadevice.rs:387] Playback: supported sample formats: [S32LE]
2022-02-11 18:55:18.248913 DEBUG [src/alsadevice.rs:388] Playback: setting format to S32LE
2022-02-11 18:55:18.250758 DEBUG [src/alsadevice.rs:419] Opening audio device "hw:USB,0" with parameters: HwParams { channels: Ok(16), rate: "Ok(96000) Hz", form
at: Ok(S32LE), access: Ok(RWInterleaved), period_size: "Ok(512) frames", buffer_size: "Ok(4096) frames" }, SwParams(avail_min: Ok(2048) frames, start_threshold:
Ok(1536) frames, stop_threshold: Ok(4096) frames)
2022-02-11 18:55:18.250829 DEBUG [src/alsadevice.rs:424] Audio device "hw:USB,0" successfully opened
2022-02-11 18:55:18.250916 DEBUG [src/bin.rs:323] Playback thread ready to start
2022-02-11 18:55:18.250967 DEBUG [src/bin.rs:326] Both capture and playback ready, release barrier
2022-02-11 18:55:18.251025 DEBUG [src/bin.rs:328] Supervisor loop starts now!
2022-02-11 18:55:18.251054 DEBUG [src/filedevice.rs:608] starting captureloop
2022-02-11 18:55:18.251069 DEBUG [src/alsadevice.rs:815] Starting playback loop
2022-02-11 18:55:18.251087 DEBUG [src/processing.rs:21] Processing loop starts now!
2022-02-11 18:55:18.251094 DEBUG [src/filedevice.rs:255] starting captureloop
2022-02-11 18:55:18.253165 INFO [src/alsadevice.rs:155] Starting playback from Prepared state
2022-02-11 18:55:18.312817 DEBUG [src/filedevice.rs:391] Entering stalled state
2022-02-11 18:55:18.316555 DEBUG [src/filedevice.rs:404] Leaving stalled state, resuming processing
2022-02-11 18:55:18.360527 DEBUG [src/filedevice.rs:391] Entering stalled state
2022-02-11 18:55:18.363649 DEBUG [src/filedevice.rs:404] Leaving stalled state, resuming processing
2022-02-11 18:55:18.406954 DEBUG [src/filedevice.rs:372] Timed out after reading 4384 of 4704 bytes
2022-02-11 18:55:18.488447 DEBUG [src/filedevice.rs:391] Entering stalled state
2022-02-11 18:55:18.574495 DEBUG [src/filedevice.rs:404] Leaving stalled state, resuming processing
2022-02-11 18:55:18.617474 DEBUG [src/filedevice.rs:372] Timed out after reading 4544 of 4704 bytes
2022-02-11 18:55:18.936524 DEBUG [src/filedevice.rs:391] Entering stalled state
2022-02-11 18:55:18.980818 DEBUG [src/filedevice.rs:404] Leaving stalled state, resuming processing
2022-02-11 18:55:19.384569 DEBUG [src/filedevice.rs:391] Entering stalled state
2022-02-11 18:55:19.445185 DEBUG [src/filedevice.rs:404] Leaving stalled state, resuming processing
2022-02-11 18:55:19.853825 DEBUG [src/filedevice.rs:391] Entering stalled state
2022-02-11 18:55:19.909837 DEBUG [src/filedevice.rs:404] Leaving stalled state, resuming processing
2022-02-11 18:55:20.323005 DEBUG [src/filedevice.rs:391] Entering stalled state
2022-02-11 18:55:20.363500 DEBUG [src/filedevice.rs:404] Leaving stalled state, resuming processing
2022-02-11 18:55:20.580944 WARN [src/conversions.rs:65] Clipping detected, 1 samples clipped, peak +0.14 dB (101.7%)
2022-02-11 18:55:20.792390 DEBUG [src/filedevice.rs:391] Entering stalled state
2022-02-11 18:55:20.830026 DEBUG [src/filedevice.rs:404] Leaving stalled state, resuming processing
2022-02-11 18:55:21.261997 DEBUG [src/filedevice.rs:391] Entering stalled state
2022-02-11 18:55:21.298241 DEBUG [src/filedevice.rs:404] Leaving stalled state, resuming processing
2022-02-11 18:55:21.709713 DEBUG [src/filedevice.rs:372] Timed out after reading 4336 of 4704 bytes
2022-02-11 18:55:21.752543 DEBUG [src/filedevice.rs:391] Entering stalled state
2022-02-11 18:55:21.756329 DEBUG [src/filedevice.rs:404] Leaving stalled state, resuming processing
2022-02-11 18:55:22.179376 DEBUG [src/filedevice.rs:372] Timed out after reading 4304 of 4704 bytes
2022-02-11 18:55:22.222202 DEBUG [src/filedevice.rs:391] Entering stalled state
2022-02-11 18:55:22.224882 DEBUG [src/filedevice.rs:404] Leaving stalled state, resuming processing
2022-02-11 18:55:22.648447 DEBUG [src/filedevice.rs:391] Entering stalled state
2022-02-11 18:55:22.691729 DEBUG [src/filedevice.rs:404] Leaving stalled state, resuming processing
2022-02-11 18:55:22.857377 DEBUG [src/bin.rs:289] Exit requested...
2022-02-11 18:55:22.862400 DEBUG [src/filedevice.rs:288] Exit message received, sending EndOfStream
2022-02-11 18:55:23.083964 DEBUG [src/bin.rs:909] Exiting
And may I drop a feature request with very little urgency: On this computer I use a focusrite scarlett 18i20 which can handle between 16 and 20 playback channels. So I needed to insert a mixer with 16 output channels to make it work. Maybe you could just ignore the excess channels when pipeline output channels is less than soundcard channels? As I said, not urgent and can be worked around.
I tried it again using the exact config you posted, still works fine.
At the moment I'm running a freshly installed Manjaro on a Ryzen 7 2700u, with 16 GB of ram.
And testing it with just:
No errors from camilladsp, no XRUNs from aplay (and I can't remember ever seeing on of those).
There is obviously some significant difference between your systems and mine. We should probably try to figure out what it is..
Do both your machines run the same system?
At the moment I'm running a freshly installed Manjaro on a Ryzen 7 2700u, with 16 GB of ram.
And testing it with just:
aplay some_music_44.1k.wav -D camilladsp
No errors from camilladsp, no XRUNs from aplay (and I can't remember ever seeing on of those).
There is obviously some significant difference between your systems and mine. We should probably try to figure out what it is..
Do both your machines run the same system?
yes, they do, they are both on linux mint 20.3. we can move this conversation to email, you already have that. will be glad to offer remote desktop and or ssh access to one of the machines...
Last edited:
I saw similar XRUN errors from Alsa cdsp plug in yesterday when setting up on Linux Mint 20.3 using the latest RC version of Camilladsp.yes, they do, they are both on linux mint 20.3. we can move this conversation to email, you already have that. will be glad to offer remote desktop and or ssh access to one of the machines...
Edit : I just checked and I am seeing the same on ubuntu server 21.10 on RPI4 using CamillaDSP 1.0.0-rc2
Attachments
Last edited:
Alright, seems like running Mint is probably the easiest way to see the issue. I'll start with setting up a Mint VM. If that doesn't work I'll be very interested in some ssh access 🙂
I should probably get a few more SD cards for my Pi4, don't have a free one to try Ubuntu server at the moment.
I should probably get a few more SD cards for my Pi4, don't have a free one to try Ubuntu server at the moment.
Hi, i have camilladsp related question. Can camilladsp be configured in such way that audio source app could control loudness volume feature? Over softvol or something like that?
Hi @Baffless ! At the moment that is a bit tricky. It can be done but requires a script or something that continuously reads the volume setting from somewhere and applies it to Camilladsp. But I want to make it easier. See this issue for some more details: https://github.com/HEnquist/camilladsp/issues/172Hi, i have camilladsp related question. Can camilladsp be configured in such way that audio source app could control loudness volume feature? Over softvol or something like that?
Thanks for info! Very helpful.Anybody knows how to read ALSA loopback CTL mixer volume with the script? amixer get ‘something’ command?Hi @Baffless ! At the moment that is a bit tricky. It can be done but requires a script or something that continuously reads the volume setting from somewhere and applies it to Camilladsp. But I want to make it easier. See this issue for some more details: https://github.com/HEnquist/camilladsp/issues/172
i have a hopefully easy question: when i get the signal from my tv via toslink into camilla, sometimes with certain music i have the incoming signal clipping. How can i atenuate the income signal a little bit? if i set a negative gain in the mixer it does not have any effect and if i create a negative gain filter and add it in the pipeline it has an effect but of course only on the outgoing signal...
I dont understand why the changes in the mixer dont take any effect, anything else i can try?
thanks.
I dont understand why the changes in the mixer dont take any effect, anything else i can try?
thanks.
Yes you can use amixer. Depending on your setup you may need to specify which card to read from, instead of just reading the default. Unfortunately I use amixer so rarely that I completely forget how to use it in between 🙄Thanks for info! Very helpful.Anybody knows how to read ALSA loopback CTL mixer volume with the script? amixer get ‘something’ command?
What do you mean that the incoming signal clips? If the digital signal from the tv is already clipped there is nothing to do on the receiving side, you have to reduce in the tv.i have a hopefully easy question: when i get the signal from my tv via toslink into camilla, sometimes with certain music i have the incoming signal clipping. How can i atenuate the income signal a little bit? if i set a negative gain in the mixer it does not have any effect and if i create a negative gain filter and add it in the pipeline it has an effect but of course only on the outgoing signal...
I dont understand why the changes in the mixer dont take any effect, anything else i can try?
thanks.
I'm not aware of any issues with the gain function of the mixer. Can you post an example of a mixer config with negative gain that doesn't work?
Thank you Henrik. I see my post is confusing. The attenuation i the mixer does work, what it doesn't do is to is to avoid the clipping of the income signal, what i guess is logical if, as you say, the signal comes clipping from the source. That's bad because the tv does not allow to do anything to it (it is fixed level), but well only affects the spotify app and only some music so i will have to live with it.
Thanks again.
Thanks again.
- Home
- Source & Line
- PC Based
- CamillaDSP - Cross-platform IIR and FIR engine for crossovers, room correction etc