You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Snapserver configured to accept fifo output from snapclient will not change the source to idle when nothing is playing. This results in silence being played, and will also block audio from lower priority sources when configured in a meta source. Current workaround is to list the source as lower priority in the meta source config to avoid blocking audio, but this does not address the constant output of silence.
Setup
Central snapcast server is being used to stream audio to various phones, raspi devices, laptops, etc. This server is not physically located where i want to capture audio.
The audio flow is: alsa capture device --> snapserver --> snapclient (output to named pipe /tmp/vinyl) --> snapserver (read from named pipe /tmp/vinyl) --> snapclients
I've included a diagram to hopefully make this more clear:
Steps to Reproduce
1.Configure downstream snapcast server to send audio
2.Configure upstream snapcast client to pipe audio to fifo file using "--player file:/tmp/filename"
3.Configure snapcast server on upstream client to utilize the same fifo pipe.
4.Configure meta source on upstream server and set higher priority for the new fifo pipe
5.Play audio to lower priority source. This source will be blocked as the higher priority "snapclient fifo source" will begin blocking. This source will not be marked idle regardless of any dryout_ms setting.
Environment details
OS: Raspbian / Fedora
Snapcast version 0.27.0
Self compiled
Debug log output
Logs from Fedora snapclient
2023-04-12 18-42-57.351 [Debug] (Stream) Failed to get chunk, returning silence
2023-04-12 18-42-58.001 [Info] (Stream) No chunks available
2023-04-12 18-42-58.401 [Debug] (Stream) Failed to get chunk, returning silence
2023-04-12 18-42-59.001 [Info] (Stream) No chunks available
2023-04-12 18-42-59.451 [Debug] (Stream) Failed to get chunk, returning silence
2023-04-12 18-43-00.001 [Info] (Stream) No chunks available
2023-04-12 18-43-00.501 [Debug] (Stream) Failed to get chunk, returning silence
2023-04-12 18-43-01.001 [Info] (Stream) No chunks available
I am encountering the same issue with squeezelite clients connected via stdout or fifo to snapcast 0.27. I've verified that the squeezelite client sends no data when idle but snapserver will not actually mark the source as such.
I have a same problem. I have a pulse audio source that is written into a pipe. Snapserver reads that pipe. I have a metastream that changes between that pipe and other inputs. The pipe has the highest priority. After a certain runtime the snapserver does not change the the source of the metastream anymore. It just keeps switched on the pipe even if nothing writes to the pipe.
Snapserver configured to accept fifo output from snapclient will not change the source to idle when nothing is playing. This results in silence being played, and will also block audio from lower priority sources when configured in a meta source. Current workaround is to list the source as lower priority in the meta source config to avoid blocking audio, but this does not address the constant output of silence.
Setup
Central snapcast server is being used to stream audio to various phones, raspi devices, laptops, etc. This server is not physically located where i want to capture audio.
The audio flow is: alsa capture device --> snapserver --> snapclient (output to named pipe /tmp/vinyl) --> snapserver (read from named pipe /tmp/vinyl) --> snapclients
I've included a diagram to hopefully make this more clear:
Steps to Reproduce
1.Configure downstream snapcast server to send audio
2.Configure upstream snapcast client to pipe audio to fifo file using "--player file:/tmp/filename"
3.Configure snapcast server on upstream client to utilize the same fifo pipe.
4.Configure meta source on upstream server and set higher priority for the new fifo pipe
5.Play audio to lower priority source. This source will be blocked as the higher priority "snapclient fifo source" will begin blocking. This source will not be marked idle regardless of any dryout_ms setting.
Environment details
Debug log output
Logs from Fedora snapclient
Logs from Fedora snapserver
The text was updated successfully, but these errors were encountered: