Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stutter with multiple snapclient instances and pulse-remap/alsa #722

Closed
NDahlem opened this issue Nov 17, 2020 · 20 comments
Closed

Stutter with multiple snapclient instances and pulse-remap/alsa #722

NDahlem opened this issue Nov 17, 2020 · 20 comments

Comments

@NDahlem
Copy link

NDahlem commented Nov 17, 2020

I have two 5.1 soundcards in my server, those are remapped using pulse audio:

load-module module-remap-sink sink_name=kueche remix=no master=alsa_output.pci-0000_00_07.0.analog-surround-51 channels=2 master_channel_map=front-right,front-right channel_map=front-left,front-right

The pulse-sinks are exposed to alsa:
pcm.pulse-kueche {
type pulse
device "kueche"
}
ctl.pulse-kueche {
type pulse
device "kueche"
}

The server runs snapserver and multiple snapclient instances (both v0.22.0 on ubuntu):
...
snapclient -h 127.0.0.1 -i 4 -s pulse-kueche
...

Streaming to snapclients over the network (raspi and android) works perfekt. But the local snapclients stutter, even if all clients except one are idle.
I tried changing the samplerate of MPD and snapserver from 48 to 44.1
Running one one snapclient works most of the time.
Running several idle in daemin mode and one with logfilter debug also seems to work most of the time
If the stream plays and I stop/pause and then resume it, it always stutters (see attached log)

My prime suspects would be, the somewhat strange snapclient -> alsa -> pulse-remap sink pipeline
Maybe it is some kind of timing issue, because logfilter debug seems to get one instance to play, if multiple instances are running.

Is there a way to use a pulse-sink from snapclient directly without going through alsa?

2020-11-17 21-44-55.098 [Info] (Connection) Resolving host IP for: 127.0.0.1
2020-11-17 21-44-55.108 [Info] (Connection) Connecting
2020-11-17 21-44-55.108 [Notice] (Connection) Connected to 127.0.0.1
2020-11-17 21-44-55.108 [Info] (Connection) My MAC: "52:54:00:fa:54:c1", socket: 8
2020-11-17 21-44-55.273 [Debug] (Connection) outstanding async_write
2020-11-17 21-44-55.274 [Info] (Controller) ServerSettings - buffer: 1000, latency: 0, volume: 55, muted: 0
metadata:{"STREAM":"MPD Gesche"}
2020-11-17 21-44-55.275 [Info] (Controller) Codec: flac, sampleformat: 44100:16:2
2020-11-17 21-44-55.275 [Info] (Player) Player name: alsa, device: pulse-kueche, description: <none>, idx: 12, sharing mode: unspecified, parameters: <none>
2020-11-17 21-44-55.275 [Info] (Player) Mixer mode: software, parameters: <none>
2020-11-17 21-44-55.276 [Info] (Player) Sampleformat: 44100:16:2, stream: 44100:16:2
2020-11-17 21-44-55.281 [Debug] (Alsa) PCM name: pulse-kueche
2020-11-17 21-44-55.281 [Debug] (Alsa) PCM state: PREPARED
2020-11-17 21-44-55.281 [Debug] (Alsa) channels: 2
2020-11-17 21-44-55.281 [Debug] (Alsa) rate: 44100 bps
2020-11-17 21-44-55.281 [Debug] (Alsa) frames: 661
2020-11-17 21-44-55.281 [Debug] (Alsa) period time: 15000
2020-11-17 21-44-55.281 [Debug] (Player) setVolume exp with base 10: 0.55 => 0.283126
2020-11-17 21-44-55.281 [Debug] (Alsa) Resizing buffer from 0 to 10584
2020-11-17 21-44-55.282 [Info] (Stream) no chunks available
2020-11-17 21-44-55.282 [Info] (Alsa) Failed to get chunk
2020-11-17 21-44-55.294 [Info] (Controller) diff to server [ms]: -0.003
2020-11-17 21-44-55.383 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-55.483 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-55.583 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-55.684 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-55.784 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-55.884 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-55.984 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-56.084 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-56.185 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-56.285 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-56.385 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-56.485 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-56.585 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-56.685 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-56.785 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-56.886 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-56.986 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-57.086 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-57.186 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-57.286 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-57.386 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-57.486 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-57.586 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-57.687 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-57.787 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-57.887 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-57.987 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-58.087 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-58.187 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-58.288 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-58.388 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-58.488 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-58.588 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-58.688 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-58.788 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-58.888 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-58.988 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-44-58.997 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-44-59.008 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-44-59.008 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2643
2020-11-17 21-44-59.019 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2643, retrying.
2020-11-17 21-44-59.026 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-44-59.036 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-44-59.036 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2643
2020-11-17 21-44-59.047 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2643, retrying.
2020-11-17 21-44-59.055 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-44-59.065 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-44-59.065 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2643
2020-11-17 21-44-59.077 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2643, retrying.
2020-11-17 21-44-59.084 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-44-59.095 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-44-59.095 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2644
2020-11-17 21-44-59.756 [Debug] (Stream) Silent frames: 432, frames: 735, age: -9.818
2020-11-17 21-44-59.772 [Debug] (Stats) Chunk: 0	0	0	0	1	210	0
2020-11-17 21-45-00.006 [Debug] (Stats) Chunk: 3	1	1	1	15	210	0
2020-11-17 21-45-01.007 [Debug] (Stats) Chunk: 21	20	13	13	75	212	0
2020-11-17 21-45-02.009 [Debug] (Stats) Chunk: 18	18	19	18	135	212	-12
2020-11-17 21-45-03.010 [Debug] (Stats) Chunk: 16	17	18	18	195	212	-22
2020-11-17 21-45-04.012 [Debug] (Stats) Chunk: 13	13	15	18	255	212	-22
2020-11-17 21-45-05.013 [Debug] (Stats) Chunk: 8	8	12	15	315	212	-22
2020-11-17 21-45-06.014 [Debug] (Stats) Chunk: 6	7	8	14	375	213	-22
2020-11-17 21-45-07.016 [Debug] (Stats) Chunk: 2	3	5	13	435	213	-18
2020-11-17 21-45-08.017 [Debug] (Stats) Chunk: 1	1	2	11	495	213	-11
2020-11-17 21-45-09.019 [Debug] (Stats) Chunk: 0	0	0	9	500	213	0
2020-11-17 21-45-10.020 [Debug] (Stats) Chunk: 0	0	0	7	500	213	0
2020-11-17 21-45-11.005 [Debug] (Stats) Chunk: 0	0	0	3	500	212	0
2020-11-17 21-45-12.006 [Debug] (Stats) Chunk: 0	0	0	1	500	212	0
2020-11-17 21-45-13.008 [Debug] (Stats) Chunk: 2	2	0	1	500	213	0
2020-11-17 21-45-14.009 [Debug] (Stats) Chunk: 2	2	2	1	500	213	0
2020-11-17 21-45-15.010 [Debug] (Stats) Chunk: 2	2	2	1	500	213	-5
2020-11-17 21-45-16.012 [Debug] (Stats) Chunk: 1	1	1	1	500	212	-4
2020-11-17 21-45-17.013 [Debug] (Stats) Chunk: 1	1	1	1	500	213	-2
2020-11-17 21-45-18.015 [Debug] (Stats) Chunk: 1	1	1	1	500	212	-2
2020-11-17 21-45-19.016 [Debug] (Stats) Chunk: 2	2	1	1	500	213	-2
2020-11-17 21-45-20.017 [Debug] (Stats) Chunk: 2	2	2	1	500	213	-3
2020-11-17 21-45-21.019 [Debug] (Stats) Chunk: 1	1	2	2	500	212	-4
2020-11-17 21-45-22.004 [Debug] (Stats) Chunk: 1	1	1	1	500	212	-4
2020-11-17 21-45-23.005 [Debug] (Stats) Chunk: 1	1	1	1	500	213	-2
2020-11-17 21-45-24.006 [Debug] (Stats) Chunk: 0	0	1	1	500	213	-2
2020-11-17 21-45-25.008 [Debug] (Stats) Chunk: 1	1	0	1	500	213	-3
2020-11-17 21-45-26.009 [Debug] (Stats) Chunk: 1	1	1	1	500	213	0
2020-11-17 21-45-27.010 [Debug] (Stats) Chunk: 1	1	1	1	500	213	-2
2020-11-17 21-45-28.012 [Debug] (Stats) Chunk: 1	1	1	1	500	213	-2
2020-11-17 21-45-29.014 [Debug] (Stats) Chunk: 1	1	1	1	500	212	-2
2020-11-17 21-45-30.015 [Debug] (Stats) Chunk: 1	1	1	1	500	213	-2
2020-11-17 21-45-31.016 [Debug] (Stats) Chunk: 0	1	1	1	500	212	-3
2020-11-17 21-45-32.018 [Debug] (Stats) Chunk: 0	0	0	1	500	213	-2
2020-11-17 21-45-33.019 [Debug] (Stats) Chunk: 1	1	1	1	500	213	0
2020-11-17 21-45-34.004 [Debug] (Stats) Chunk: 1	1	1	1	500	213	-2
2020-11-17 21-45-34.137 [Info] (Stream) Exception: 0
2020-11-17 21-45-34.137 [Info] (Alsa) Failed to get chunk
2020-11-17 21-45-34.237 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-34.337 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-34.438 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-34.538 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-34.638 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-34.738 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-34.838 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-34.938 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-35.038 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-35.139 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-35.239 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-35.339 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-35.439 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-35.539 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-35.639 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-35.739 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-35.840 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-35.940 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-36.040 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-36.140 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-36.240 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-36.340 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-36.440 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-36.541 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-36.641 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-36.741 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-36.841 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-36.941 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-37.041 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-37.141 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-37.241 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-37.342 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-37.442 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-37.542 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-37.642 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-37.742 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-37.842 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-37.942 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-38.043 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-38.143 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-38.243 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-38.343 [Debug] (Alsa) Waiting for chunk
2020-11-17 21-45-38.363 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 741, delay: 9394, retrying.
2020-11-17 21-45-38.373 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 741, delay: 9394, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.373 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 4253
2020-11-17 21-45-38.384 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 4253, retrying.
2020-11-17 21-45-38.389 [Debug] (Stream) age > 0: 4036ms, dropping old chunks
2020-11-17 21-45-38.389 [Debug] (Stream) age: -953, requested chunk_duration: 60, duration: 26
2020-11-17 21-45-38.390 [Debug] (Stream) Silent frames: 2646, frames: 2646, age: -953.109
2020-11-17 21-45-38.391 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.401 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.401 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2643
2020-11-17 21-45-38.413 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2643, retrying.
2020-11-17 21-45-38.420 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.430 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.430 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2643
2020-11-17 21-45-38.442 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2643, retrying.
2020-11-17 21-45-38.449 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.459 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.460 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2643
2020-11-17 21-45-38.472 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2643, retrying.
2020-11-17 21-45-38.479 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.489 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.489 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2638
2020-11-17 21-45-38.501 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2638, retrying.
2020-11-17 21-45-38.508 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.519 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.519 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2639
2020-11-17 21-45-38.531 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2639, retrying.
2020-11-17 21-45-38.538 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.549 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.549 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2640
2020-11-17 21-45-38.561 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2640, retrying.
2020-11-17 21-45-38.568 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.578 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.578 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2639
2020-11-17 21-45-38.590 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2639, retrying.
2020-11-17 21-45-38.597 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.608 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.608 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2639
2020-11-17 21-45-38.620 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2639, retrying.
2020-11-17 21-45-38.627 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.637 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.638 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2635
2020-11-17 21-45-38.649 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2635, retrying.
2020-11-17 21-45-38.657 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.667 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.668 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2640
2020-11-17 21-45-38.680 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2640, retrying.
2020-11-17 21-45-38.687 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.697 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.697 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2639
2020-11-17 21-45-38.709 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2639, retrying.
2020-11-17 21-45-38.716 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.727 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.727 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2639
2020-11-17 21-45-38.739 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2639, retrying.
2020-11-17 21-45-38.746 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.756 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.757 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2639
2020-11-17 21-45-38.768 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2639, retrying.
2020-11-17 21-45-38.775 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.786 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.786 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2640
2020-11-17 21-45-38.798 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2640, retrying.
2020-11-17 21-45-38.805 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.815 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.816 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2639
2020-11-17 21-45-38.830 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2639, retrying.
2020-11-17 21-45-38.837 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.847 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.847 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2639
2020-11-17 21-45-38.867 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2639, retrying.
2020-11-17 21-45-38.874 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.884 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.884 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2643
2020-11-17 21-45-38.896 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2643, retrying.
2020-11-17 21-45-38.903 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.914 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.914 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2643
2020-11-17 21-45-38.926 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2643, retrying.
2020-11-17 21-45-38.933 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.943 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.943 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2644
2020-11-17 21-45-38.955 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2644, retrying.
2020-11-17 21-45-38.962 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.973 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.973 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2640
2020-11-17 21-45-38.985 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2640, retrying.
2020-11-17 21-45-38.992 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-39.002 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-39.002 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2639
2020-11-17 21-45-39.014 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2639, retrying.
2020-11-17 21-45-39.021 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-39.031 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-39.031 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2639
2020-11-17 21-45-39.043 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2639, retrying.
2020-11-17 21-45-39.051 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-39.061 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-39.061 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2638
2020-11-17 21-45-39.073 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2638, retrying.
2020-11-17 21-45-39.080 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-39.091 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-39.091 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2639
2020-11-17 21-45-39.103 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2639, retrying.
2020-11-17 21-45-39.110 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-39.120 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-39.120 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2640
2020-11-17 21-45-39.132 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2640, retrying.
2020-11-17 21-45-39.139 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-39.150 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-39.150 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2639
2020-11-17 21-45-39.162 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2639, retrying.
2020-11-17 21-45-39.169 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-39.179 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-39.179 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2640
2020-11-17 21-45-39.191 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2640, retrying.
2020-11-17 21-45-39.198 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-39.209 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-39.209 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2640
2020-11-17 21-45-39.221 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2640, retrying.
2020-11-17 21-45-39.228 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-39.238 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-39.239 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2639
2020-11-17 21-45-39.250 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2639, retrying.
2020-11-17 21-45-39.258 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-39.268 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-39.268 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2637
2020-11-17 21-45-39.280 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2637, retrying.
2020-11-17 21-45-39.285 [Debug] (Stream) Silent frames: 2531, frames: 2646, age: -57.403
2020-11-17 21-45-39.287 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-39.297 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-39.298 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2639
2020-11-17 21-45-39.309 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2639, retrying.
2020-11-17 21-45-39.315 [Debug] (Stats) Chunk: -305	-305	-305	-305	1	0	0
2020-11-17 21-45-39.317 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
@NDahlem NDahlem added the bug label Nov 17, 2020
@badaix
Copy link
Owner

badaix commented Nov 18, 2020

Can you test with another player, e.g. aplay -D pulse-kueche?

@NDahlem
Copy link
Author

NDahlem commented Nov 18, 2020

Sorry, should have mentioned it in the first post:

mpg123 plays fine to pulse-kueche.
In my former setup it had mpd-outputs mapped to the pulse-sources. Worked flawlessly.
I added snapserver/client to play the in-ceiling speakers in sync with network speakers

aplay -D pulse-kueche test.wav
Playing WAVE 'test.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
Also plays flawlessly.

I also used tried:
snapclient -h 127.0.0.1 --logsink null --player file | aplay -f cd -D pulse-kueche
This also works

@badaix
Copy link
Owner

badaix commented Nov 19, 2020

Looks like this virtual pulse sink device is not able to reliably report the available (to-be-filled-)buffer size and delay (when will the to-be-filled-buffer be audible). This low level information is necessary for sync playback. It would work to just "write" into the buffer in a loop, this is what actually happens with the --player file | aplay chain, but this would not play in sync.
I don't know if a native pulseaudio backend would be the rescue. There is a simply example available that could be a starting point to test this:

static void stream_request_cb(pa_stream *s, size_t length, void *userdata) {
 pa_usec_t usec;
 int neg;
 pa_stream_get_latency(s,&usec,&neg);
 printf("  latency %8d us\n",(int)usec);
 if (sampleoffs*2 + length > sizeof(sampledata)) {
   sampleoffs = 0;
 }
 if (length > sizeof(sampledata)) {
   length = sizeof(sampledata);
 }
 pa_stream_write(s, &sampledata[sampleoffs], length, NULL, 0LL, PA_SEEK_RELATIVE);
 sampleoffs += length/2;
}

@NDahlem
Copy link
Author

NDahlem commented Nov 19, 2020

I didn't manage to get the example to compile on my ubuntu box. But I did manage to switch to alsa and get rid of the abomination that is pulseaudio.
If a native pulseaudio backend if of interest to you I would try further to get the example code running. Otherwise I am more than happy with alsa. Maybe one could add a hint to the documentation that running on pulse-remap is not a good idea.

@badaix
Copy link
Owner

badaix commented Nov 19, 2020

Maybe I will add a pulse player backend as a prototype tonight or tomorrow, now I'm curious if and how good it would work.
The normal snapclient -> alsa -> pulse -> alsa chain introduces a higher latency and reports less reliable latency compared to snapclient -> alsa (when choosing a PCM device that bypasses pulse). I wonder how the snapclient -> pulse -> alsa chain would perform.

@NDahlem
Copy link
Author

NDahlem commented Nov 19, 2020

If I can aid in testing let me know. As for me the bug can be closed or changed to enhancement "add native pulse backend"

@rcmcronny
Copy link

As i also have stutter from time to time and i use pulse also, i would like to test a pulseaudio backend also :)

@badaix
Copy link
Owner

badaix commented Nov 20, 2020

I've added an initial support for PulseAudio in develop branch: d9e0b77
It's already working stable, there is some polishing, documentation, Makefile support, ... missing.
To compile you have to use CMake and need to install libpulse-dev. The PulseAudio player backend can be activated with the command line options --player pulse.
There are automated builds available in Actions

@badaix
Copy link
Owner

badaix commented Nov 23, 2020

@NDahlem @rcmcronny have you already had the chance to test the pulse backend?
@rcmcronny the develop branch now supports a configurable buffer size and buffer count, maybe this fixes your stutters. It is
configured with --player alsa:buffer_time=<buffer size in ms, default 80>,fragments=<buffer count, default 4>

@rcmcronny
Copy link

@badaix ahh sorry, missed you former post about it, will try it the next days. Installed the dev server version, lets see , if i can tune it :) Thanks !

@badaix
Copy link
Owner

badaix commented Nov 24, 2020

The fixes are related to the clients, server doesn't need to be updated

@rcmcronny
Copy link

@badaix yeahh sorry, missunderstood it, testing it now with 1 snapclient device.

When i start it with "--player pulse" i can not terminate the process with a STRG+C or SIGTERM, I have to use a SIGKILL. With the "--player alsa" i can use STRG+C / SIGTERM to stop the client.

I will do the audible audio test, at home in the evening then ;)

@badaix
Copy link
Owner

badaix commented Nov 25, 2020

can you also provide a debug log for the STRG+C issue?
Please use the latest develop version (self compiled or from Actions)

@rcmcronny
Copy link

rcmcronny commented Nov 25, 2020

IN the debug log is not really much to see. After the last line i press STRG+C (also tried SIGTERM [kill -TERM PID]) No output.
Hope it helps , Ronny

This is the last Actions version from today.

2020-11-25 11-30-52.299 [Info] (Connection) Resolving host IP for: 10.0.0.51
2020-11-25 11-30-52.300 [Info] (Connection) Connecting
2020-11-25 11-30-52.306 [Notice] (Connection) Connected to 10.0.0.51
2020-11-25 11-30-52.306 [Info] (Connection) My MAC: "b8:27:eb:53:f5:6a", socket: 9
2020-11-25 11-30-53.043 [Debug] (Connection) outstanding async_write
2020-11-25 11-30-53.052 [Info] (Controller) ServerSettings - buffer: 1000, latency: 0, volume: 50, muted: 0
2020-11-25 11-30-53.056 [Info] (Controller) Codec: flac, sampleformat: 48000:16:2
2020-11-25 11-30-53.057 [Info] (Player) Player name: pulse, device: plughw:CARD=sndrpihifiberry,DEV=0, description: snd_rpi_hifiberry_dac, HifiBerry DAC HiFi pcm5102a-hifi-0
2020-11-25 11-30-53.057 [Info] (Player) Hardware device with all software conversions, idx: 6, sharing mode: unspecified, parameters:
2020-11-25 11-30-53.057 [Info] (Player) Mixer mode: software, parameters:
2020-11-25 11-30-53.057 [Info] (Player) Sampleformat: 48000:16:2, stream: 48000:16:2
2020-11-25 11-30-53.058 [Info] (PulsePlayer) Using buffer_time: 80 ms

@badaix
Copy link
Owner

badaix commented Nov 25, 2020

Good news: I can reproduce it on my RPi with HiFiBerry DAC (actually I've never tested this outside my X64 dev box).
Will debug this later.
Edit: Ok, there was no pulseaudio installed on the RPi. Snapclient should detect this and exit.

@rcmcronny
Copy link

Ahh, that makes sense, i have only installed the dependencies (libpulse0 and 3-4 others).

@badaix
Copy link
Owner

badaix commented Nov 26, 2020

I've added some more checks. The SIGTERM was necessary because snapclient was waiting in a busy loop for PulseAudio to be connected and initialized (which will never happen without a running PulseAudio server).

The current dev version will exit with Failed to connect to PulseAudio context: Connection refused:

2020-11-26 10-43-26.750 [Info] (Connection) Resolving host IP for: 127.0.0.1
2020-11-26 10-43-26.750 [Info] (Connection) Connecting
2020-11-26 10-43-26.751 [Notice] (Connection) Connected to 127.0.0.1
2020-11-26 10-43-26.751 [Info] (Connection) My MAC: "dc:a6:32:3f:bd:1c", socket: 8
2020-11-26 10-43-26.897 [Debug] (Connection) outstanding async_write
2020-11-26 10-43-26.898 [Info] (Controller) ServerSettings - buffer: 1000, latency: 0, volume: 68, muted: 0
metadata:{"STREAM":"Meta"}
2020-11-26 10-43-26.898 [Info] (Controller) Codec: flac, sampleformat: 48000:16:2
2020-11-26 10-43-26.898 [Info] (Player) Player name: pulse, device: dmix:CARD=sndrpihifiberry,DEV=0, description: snd_rpi_hifiberry_dacplus, HiFiBerry DAC+ HiFi pcm512x-hifi-0
2020-11-26 10-43-26.898 [Info] (Player) Direct sample mixing device, idx: 23, sharing mode: unspecified, parameters: <none>
2020-11-26 10-43-26.899 [Info] (Player) Mixer mode: software, parameters: <none>
2020-11-26 10-43-26.899 [Info] (Player) Sampleformat: 48000:16:2, stream: 48000:16:2
2020-11-26 10-43-26.899 [Info] (PulsePlayer) Using buffer_time: 80 ms
2020-11-26 10-43-26.900 [Debug] (PulsePlayer) Destructor
2020-11-26 10-43-26.900 [Info] (PulsePlayer) Stop
2020-11-26 10-43-26.900 [Debug] (Connection) Disconnecting
2020-11-26 10-43-26.902 [Debug] (Connection) Disconnected
2020-11-26 10-43-26.902 [Fatal] (Snapclient) Exception: Failed to connect to PulseAudio context: Connection refused
2020-11-26 10-43-26.902 [Notice] (Snapclient) Snapclient terminated.

@badaix
Copy link
Owner

badaix commented Nov 29, 2020

The develop branch should now work in such error case (see also #727):

2020-11-17 21-45-38.391 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.401 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.401 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2643
2020-11-17 21-45-38.413 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2643, retrying.
2020-11-17 21-45-38.420 [Warn] (Alsa) snd_pcm_avail_delay failed: Broken pipe, avail: 2646, delay: 0, retrying.
2020-11-17 21-45-38.430 [Warn] (Alsa) snd_pcm_avail_delay failed again: Broken pipe, avail: 2646, delay: 0, using snd_pcm_avail and snd_pcm_delay.
2020-11-17 21-45-38.430 [Warn] (Alsa) snd_pcm_avail and snd_pcm_delay failed: Success, avail: -32, delay: 2643
2020-11-17 21-45-38.442 [Warn] (Alsa) snd_pcm_avail_delay failed: Input/output error, avail: -32, delay: 2643, retrying.

@NDahlem Can you please check if the develop branch fixes your original issue?

@NDahlem
Copy link
Author

NDahlem commented Dec 13, 2020

Sorry, for the late reaction. Using the latest dev build with --player=pulse works fine. I did't manage to specify a sink with -s, seems to always use the default sink. Setting the default sink to a remap-sink works fine without stutter.

@badaix
Copy link
Owner

badaix commented Dec 17, 2020

Can you please retry with --player alsa, just like in your original post?
The -s option is (currently) not available for --player=pulse

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants