#1547·snapcast

process:// creates zombies

Author: ettomCreated Aug 27, 2026Updated Aug 27, 2026

Describe the bug A clear and concise description of what the bug is. When running mpv via process://, and if mpv fails to start (e.g. yt-dlp failure), an excessive amount of zombie processes are created.

Steps to Reproduce

  1. Create the following script (just closes stdout and sleeps):
#!/bin/sh
exec >&-
sleep 1
  1. Run snapserver configured to use that in process://:
snapserver -c /dev/null --stream.source "process://$HOME/reproducer?name=repro"
  1. Observe a zombie process created every 100ms

Environment details

  • OS: NixOS 26.05
  • Snapcast version: 0.35.0
  • Installed from a package

Attach logfile if applicable Generate logs with snapclient --logfilter debug or snapserver --logging.filter debug if possible and paste them in the following codeblock

log
2026-08-27 20-19-19.576 [Info] (Snapserver) Version 0.35.0
2026-08-27 20-19-19.576 [Info] (Snapserver) Stream plugin directory: '"/usr/share/snapserver/plug-ins"', sandbox directory: '"/usr/share/snapserver/sandbox"'
2026-08-27 20-19-19.576 [Info] (Snapserver) Adding source: process:///home/ettom/reproducer?name=repro
2026-08-27 20-19-19.578 [Error] (Avahi) avahi_entry_group_new() failed: Not permitted
2026-08-27 20-19-19.578 [Info] (Snapserver) Using HTTP host name: P14s
2026-08-27 20-19-19.582 [Info] (PcmStream) PcmStream: repro, sampleFormat: 48000:16:2
2026-08-27 20-19-19.583 [Info] (Server) Stream: {"fragment":"","host":"","path":"/home/ettom/reproducer","query":{"chunk_ms":"20","codec":"flac","name":"repro","sampleformat":"48000:16:2"},"raw":"process:///home/ettom/reproducer?chunk_ms=20&codec=flac&name=repro&sampleformat=48000%3A16%3A2","scheme":"process"}
2026-08-27 20-19-19.583 [Info] (FlacEnc) Init - compression level: 2
2026-08-27 20-19-19.584 [Info] (ControlServer) Creating TCP control acceptor for address: ::, port: 1705
2026-08-27 20-19-19.584 [Info] (ControlServer) Creating HTTP acceptor for address: ::, port: 1780
2026-08-27 20-19-19.584 [Info] (StreamServer) Creating TCP stream acceptor for address: ::, port: 1704
2026-08-27 20-19-19.584 [Info] (Snapserver) Number of threads: 4, hw threads: 16
2026-08-27 20-19-19.586 [Error] (AsioStream) Error reading message in stream 'repro': End of file, length: 0, ec: asio.misc:2
2026-08-27 20-19-19.688 [Error] (ProcessStream) Error while reading from stderr: Operation canceled
2026-08-27 20-19-19.794 [Error] (ProcessStream) Error while reading from stderr: Operation canceled
2026-08-27 20-19-19.900 [Error] (ProcessStream) Error while reading from stderr: Operation canceled
...