01-15-2023, 05:09 AM
(01-15-2023, 04:35 AM)DRONE7 Wrote: I know very little about DSP or Camilla but from your post the 'buffer under-runs' seem to be a feature.
Have you increased the buffer in the audio set-up ? mpd-settings.
Someone more conversant than I will be along soon I expect :-)
I did increase it to 16MB. Decreasing it back to 4MB doesn't fix the problem. It changes how long I can play the track before skipping for the error to occur. Here is a CamillaDSP log example with 4MB MPD buffer and going from track to track.
Code:
2023-01-15 05:00:09.538654 [38;5;208mWARN[0m [src/alsadevice.rs:157] Prepare playback after buffer underrun
2023-01-15 05:01:15.571565 [38;5;208mWARN[0m [src/alsadevice.rs:157] Prepare playback after buffer underrun
2023-01-15 05:01:15.678317 [38;5;208mWARN[0m [src/alsadevice.rs:192] Wait timed out, playback device takes too long to drain buffer
2023-01-15 05:01:15.678431 [38;5;208mWARN[0m [src/alsadevice.rs:213] Retrying playback, error: ALSA function 'snd_pcm_writei' failed with error 'EAGAIN: Try again'
2023-01-15 05:01:15.700147 [38;5;196mERROR[0m [src/bin.rs:344] Playback error: ALSA function 'snd_pcm_writei' failed with error 'EAGAIN: Try again'
2023-01-15 05:01:15.784286 [38;5;208mWARN[0m [src/alsadevice.rs:192] Wait timed out, playback device takes too long to drain buffer
2023-01-15 05:01:15.784408 [38;5;208mWARN[0m [src/alsadevice.rs:213] Retrying playback, error: ALSA function 'snd_pcm_writei' failed with error 'EAGAIN: Try again'
Jan 15 16:01 : output: Failed to play on "ALSA Default" (alsa): snd_pcm_poll_descriptors_revents() failed: No such device
Jan 15 16:01 : exception: Failed to open audio output
2023-01-15 05:01:30.609982 INFO [src/bin.rs:711] CamillaDSP version 1.0.3
2023-01-15 05:01:30.610103 INFO [src/bin.rs:712] Running on linux, aarch64
2023-01-15 05:01:30.630748 INFO [src/alsadevice.rs:161] Starting playback from Prepared state
The question, really, is why are buffer underruns occurring AND resulting in MPD error in Moode. When I was playing with CamillaDSP settings I noticed that at least one of them does not apply on Moode when I select Apply to DSP. It seems to apply but then if I choose Fetch from DSP then the wrong value is returned. So Moode's interface/implementation to CamillaDSP is not generic.