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

Default stream is not correct #1293

Open
erahhal opened this issue Oct 17, 2024 · 2 comments
Open

Default stream is not correct #1293

erahhal opened this issue Oct 17, 2024 · 2 comments

Comments

@erahhal
Copy link

erahhal commented Oct 17, 2024

Describe the bug
Despite being first in the server configuration, the stream defined first is not being selected by clients as default.

Steps to Reproduce

  1. Run snapserver with:

snapserver --daemon --stream.stream=meta:///b_bluetooth/d_mediaserver/e_speakerserver/c_spotify?name=a_main --stream.stream=pipe:///run/snapserver/bluetooth?name=b_bluetooth --stream.stream=pipe:///run/snapserver/spotify?name=c_spotify --stream.stream=pipe:///run/snapserver/mediaserver?name=d_mediaserver&dryout_ms=2000&idle_threshold=5000&mode=create&send_silence=false&silence_threshold_percent=1.0 --stream.stream=pipe:///run/snapserver/speakerserver?name=e_speakerserver&dryout_ms=2000&idle_threshold=5000&mode=create&send_silence=false&silence_threshold_percent=1.0 --stream.bind_to_address=:: --stream.port=1704 --stream.sampleformat=44100:16:2 --stream.codec=flac --tcp.enabled=1 --tcp.bind_to_address=:: --tcp.port=1705

  1. Connect to server with any snapclient (linux command line or web or android)
  2. Note that b_bluetooth is selected as default rather than a_main

image

Environment details

  • NixOS unstable on Raspberry Pi 4
  • Snapcast version v0.29.0
  • Installed from nixpkgs, using snapserver module

Attach logfile if applicable

Nothing notable in snapclient or snapserver logs. Snapserver log below (FIFO paths were changed since it was run interactively):

2024-10-17 13-47-17.655 [Info] (Snapserver) Version 0.29.0
2024-10-17 13-47-17.655 [Info] (Snapserver) Adding stream: meta:///b_bluetooth/d_mediaserver/e_speakerserver/c_spotify?name=a_main
2024-10-17 13-47-17.655 [Info] (Snapserver) Adding stream: pipe:///tmp/bluetooth?name=b_bluetooth
2024-10-17 13-47-17.655 [Info] (Snapserver) Adding stream: pipe:///tmp/spotify?name=c_spotify
2024-10-17 13-47-17.655 [Info] (Snapserver) Adding stream: pipe:///tmp/mediaserver?name=d_mediaserver&dryout_ms=2000&idle_threshold=5000&mode=create&send_silence=false&silence_threshold_percent=1.0
2024-10-17 13-47-17.655 [Info] (Snapserver) Adding stream: pipe:///tmp/speakerserver?name=e_speakerserver&dryout_ms=2000&idle_threshold=5000&mode=create&send_silence=false&silence_threshold_percent=1.0
2024-10-17 13-47-17.655 [Notice] (init) Settings file: "/home/mediaserver/.config/snapserver/server.json"
2024-10-17 13-47-17.662 [Error] (Avahi) avahi_entry_group_new() failed: Not permitted
2024-10-17 13-47-17.662 [Info] (Snapserver) Using HTTP host name: partymusic
2024-10-17 13-47-17.662 [Debug] (parse) StreamUri: meta:///b_bluetooth/d_mediaserver/e_speakerserver/c_spotify?name=a_main
2024-10-17 13-47-17.662 [Debug] (parse) StreamUri.toString: meta:////b_bluetooth/d_mediaserver/e_speakerserver/c_spotify?name=a_main
2024-10-17 13-47-17.662 [Debug] (parse) StreamUri: pipe:///tmp/bluetooth?name=b_bluetooth
2024-10-17 13-47-17.662 [Debug] (parse) StreamUri.toString: pipe:////tmp/bluetooth?name=b_bluetooth
2024-10-17 13-47-17.662 [Debug] (PcmStream) Chunk duration: 20 ms, frames: 882, size: 3528
2024-10-17 13-47-17.662 [Info] (PcmStream) PcmStream: b_bluetooth, sampleFormat: 44100:16:2
2024-10-17 13-47-17.662 [Debug] (PcmStream) Silence threshold percent: 0, silence threshold amplitude: 0
2024-10-17 13-47-17.662 [Debug] (AsioStream) Chunk duration: 20 ms, frames: 882, size: 3528
2024-10-17 13-47-17.662 [Info] (PipeStream) PipeStream mode: create
2024-10-17 13-47-17.662 [Info] (Server) Stream: {"fragment":"","host":"","path":"/tmp/bluetooth","query":{"chunk_ms":"20","codec":"flac","name":"b_bluetooth","sampleformat":"44100:16:2"},"raw":"pipe:////tmp/bluetooth?chunk_ms=20&codec=flac&name=b_bluetooth&sampleformat=44100:16:2","scheme":"pipe"}
2024-10-17 13-47-17.662 [Debug] (parse) StreamUri: pipe:///tmp/spotify?name=c_spotify
2024-10-17 13-47-17.663 [Debug] (parse) StreamUri.toString: pipe:////tmp/spotify?name=c_spotify
2024-10-17 13-47-17.663 [Debug] (PcmStream) Chunk duration: 20 ms, frames: 882, size: 3528
2024-10-17 13-47-17.663 [Info] (PcmStream) PcmStream: c_spotify, sampleFormat: 44100:16:2
2024-10-17 13-47-17.663 [Debug] (PcmStream) Silence threshold percent: 0, silence threshold amplitude: 0
2024-10-17 13-47-17.663 [Debug] (AsioStream) Chunk duration: 20 ms, frames: 882, size: 3528
2024-10-17 13-47-17.663 [Info] (PipeStream) PipeStream mode: create
2024-10-17 13-47-17.663 [Info] (Server) Stream: {"fragment":"","host":"","path":"/tmp/spotify","query":{"chunk_ms":"20","codec":"flac","name":"c_spotify","sampleformat":"44100:16:2"},"raw":"pipe:////tmp/spotify?chunk_ms=20&codec=flac&name=c_spotify&sampleformat=44100:16:2","scheme":"pipe"}
2024-10-17 13-47-17.663 [Debug] (parse) StreamUri: pipe:///tmp/mediaserver?name=d_mediaserver&dryout_ms=2000&idle_threshold=5000&mode=create&send_silence=false&silence_threshold_percent=1.0
2024-10-17 13-47-17.663 [Debug] (parse) StreamUri.toString: pipe:////tmp/mediaserver?dryout_ms=2000&idle_threshold=5000&mode=create&name=d_mediaserver&send_silence=false&silence_threshold_percent=1.0
2024-10-17 13-47-17.663 [Debug] (PcmStream) Chunk duration: 20 ms, frames: 882, size: 3528
2024-10-17 13-47-17.663 [Info] (PcmStream) PcmStream: d_mediaserver, sampleFormat: 44100:16:2
2024-10-17 13-47-17.663 [Debug] (PcmStream) Silence threshold percent: 1, silence threshold amplitude: 327
2024-10-17 13-47-17.663 [Debug] (AsioStream) Chunk duration: 20 ms, frames: 882, size: 3528
2024-10-17 13-47-17.663 [Info] (PipeStream) PipeStream mode: create
2024-10-17 13-47-17.663 [Info] (Server) Stream: {"fragment":"","host":"","path":"/tmp/mediaserver","query":{"chunk_ms":"20","codec":"flac","dryout_ms":"2000","idle_threshold":"5000","mode":"create","name":"d_mediaserver","sampleformat":"44100:16:2","send_silence":"false","silence_threshold_percent":"1.0"},"raw":"pipe:////tmp/mediaserver?chunk_ms=20&codec=flac&dryout_ms=2000&idle_threshold=5000&mode=create&name=d_mediaserver&sampleformat=44100:16:2&send_silence=false&silence_threshold_percent=1.0","scheme":"pipe"}
2024-10-17 13-47-17.663 [Debug] (parse) StreamUri: pipe:///tmp/speakerserver?name=e_speakerserver&dryout_ms=2000&idle_threshold=5000&mode=create&send_silence=false&silence_threshold_percent=1.0
2024-10-17 13-47-17.663 [Debug] (parse) StreamUri.toString: pipe:////tmp/speakerserver?dryout_ms=2000&idle_threshold=5000&mode=create&name=e_speakerserver&send_silence=false&silence_threshold_percent=1.0
2024-10-17 13-47-17.663 [Debug] (PcmStream) Chunk duration: 20 ms, frames: 882, size: 3528
2024-10-17 13-47-17.663 [Info] (PcmStream) PcmStream: e_speakerserver, sampleFormat: 44100:16:2
2024-10-17 13-47-17.663 [Debug] (PcmStream) Silence threshold percent: 1, silence threshold amplitude: 327
2024-10-17 13-47-17.664 [Debug] (AsioStream) Chunk duration: 20 ms, frames: 882, size: 3528
2024-10-17 13-47-17.664 [Info] (PipeStream) PipeStream mode: create
2024-10-17 13-47-17.664 [Info] (Server) Stream: {"fragment":"","host":"","path":"/tmp/speakerserver","query":{"chunk_ms":"20","codec":"flac","dryout_ms":"2000","idle_threshold":"5000","mode":"create","name":"e_speakerserver","sampleformat":"44100:16:2","send_silence":"false","silence_threshold_percent":"1.0"},"raw":"pipe:////tmp/speakerserver?chunk_ms=20&codec=flac&dryout_ms=2000&idle_threshold=5000&mode=create&name=e_speakerserver&sampleformat=44100:16:2&send_silence=false&silence_threshold_percent=1.0","scheme":"pipe"}
2024-10-17 13-47-17.664 [Debug] (parse) StreamUri: meta:///b_bluetooth/d_mediaserver/e_speakerserver/c_spotify?name=a_main
2024-10-17 13-47-17.664 [Debug] (parse) StreamUri.toString: meta:////b_bluetooth/d_mediaserver/e_speakerserver/c_spotify?name=a_main
2024-10-17 13-47-17.664 [Debug] (PcmStream) Chunk duration: 20 ms, frames: 882, size: 3528
2024-10-17 13-47-17.664 [Info] (PcmStream) PcmStream: a_main, sampleFormat: 44100:16:2
2024-10-17 13-47-17.664 [Debug] (PcmStream) Silence threshold percent: 0, silence threshold amplitude: 0
2024-10-17 13-47-17.664 [Info] (Server) Stream: {"fragment":"","host":"","path":"/b_bluetooth/d_mediaserver/e_speakerserver/c_spotify","query":{"chunk_ms":"20","codec":"flac","name":"a_main","sampleformat":"44100:16:2"},"raw":"meta:////b_bluetooth/d_mediaserver/e_speakerserver/c_spotify?chunk_ms=20&codec=flac&name=a_main&sampleformat=44100:16:2","scheme":"meta"}
2024-10-17 13-47-17.664 [Debug] (parse) StreamUri: pipe:///tmp/bluetooth?name=b_bluetooth
2024-10-17 13-47-17.664 [Debug] (parse) StreamUri.toString: pipe:////tmp/bluetooth?name=b_bluetooth
2024-10-17 13-47-17.664 [Debug] (parse) StreamUri: pipe:///tmp/spotify?name=c_spotify
2024-10-17 13-47-17.664 [Debug] (parse) StreamUri.toString: pipe:////tmp/spotify?name=c_spotify
2024-10-17 13-47-17.664 [Debug] (parse) StreamUri: pipe:///tmp/mediaserver?name=d_mediaserver&dryout_ms=2000&idle_threshold=5000&mode=create&send_silence=false&silence_threshold_percent=1.0
2024-10-17 13-47-17.665 [Debug] (parse) StreamUri.toString: pipe:////tmp/mediaserver?dryout_ms=2000&idle_threshold=5000&mode=create&name=d_mediaserver&send_silence=false&silence_threshold_percent=1.0
2024-10-17 13-47-17.665 [Debug] (parse) StreamUri: pipe:///tmp/speakerserver?name=e_speakerserver&dryout_ms=2000&idle_threshold=5000&mode=create&send_silence=false&silence_threshold_percent=1.0
2024-10-17 13-47-17.665 [Debug] (parse) StreamUri.toString: pipe:////tmp/speakerserver?dryout_ms=2000&idle_threshold=5000&mode=create&name=e_speakerserver&send_silence=false&silence_threshold_percent=1.0
2024-10-17 13-47-17.665 [Debug] (MetaStream) Start, sampleformat: 44100:16:2
2024-10-17 13-47-17.665 [Debug] (PcmStream) Start: a_main, type: meta, sampleformat: 44100:16:2, codec: flac
2024-10-17 13-47-17.665 [Info] (FlacEnc) Init - compression level: 2
2024-10-17 13-47-17.665 [Debug] (PcmStream) Start: b_bluetooth, type: pipe, sampleformat: 44100:16:2, codec: flac
2024-10-17 13-47-17.665 [Info] (FlacEnc) Init - compression level: 2
2024-10-17 13-47-17.666 [Debug] (PcmStream) Start: c_spotify, type: pipe, sampleformat: 44100:16:2, codec: flac
2024-10-17 13-47-17.666 [Info] (FlacEnc) Init - compression level: 2
2024-10-17 13-47-17.666 [Debug] (PcmStream) Start: d_mediaserver, type: pipe, sampleformat: 44100:16:2, codec: flac
2024-10-17 13-47-17.666 [Info] (FlacEnc) Init - compression level: 2
2024-10-17 13-47-17.667 [Debug] (PcmStream) Start: e_speakerserver, type: pipe, sampleformat: 44100:16:2, codec: flac
2024-10-17 13-47-17.667 [Info] (FlacEnc) Init - compression level: 2
2024-10-17 13-47-17.667 [Info] (ControlServer) Creating TCP acceptor for address: ::, port: 1705
2024-10-17 13-47-17.667 [Info] (ControlServer) Creating HTTP acceptor for address: ::, port: 1780
2024-10-17 13-47-17.667 [Info] (StreamServer) Creating stream acceptor for address: ::, port: 1704
2024-10-17 13-47-17.667 [Info] (Snapserver) Number of threads: 4, hw threads: 4
2024-10-17 13-47-17.668 [Error] (AsioStream) Error reading message: End of file, length: 0, ec: asio.misc:2
2024-10-17 13-47-17.668 [Error] (AsioStream) Error reading message: End of file, length: 0, ec: asio.misc:2
2024-10-17 13-47-17.668 [Error] (AsioStream) Error reading message: End of file, length: 0, ec: asio.misc:2
2024-10-17 13-47-17.668 [Error] (AsioStream) Error reading message: End of file, length: 0, ec: asio.misc:2
2024-10-17 13-47-18.423 [Notice] (StreamServer) StreamServer::NewConnection: ::ffff:10.0.0.29
2024-10-17 13-47-18.464 [Notice] (ControlServer) ControlServer::NewConnection: ::ffff:10.0.0.57
2024-10-17 13-47-18.464 [Debug] (ControlSessionHTTP) ControlSessionHttp, Local IP: ::ffff:10.0.0.29
2024-10-17 13-47-18.465 [Debug] (StreamSessionTCP) getNextMessage: Hello, size: 213, id: 5147, refers: 0
2024-10-17 13-47-18.465 [Debug] (Server) onMessageReceived: Hello, size: 213, id: 5147, refers: 0, sent: 55341,392685, recv: 55341,393079
2024-10-17 13-47-18.465 [Info] (Server) Hello from dc:a6:32:21:21:47, host: partymusic, v0.29.0, ClientName: Snapclient, OS: NixOS 24.11 (Vicuna), Arch: aarch64, Protocol version: 2
2024-10-17 13-47-18.465 [Debug] (Server) Sending ServerSettings to dc:a6:32:21:21:47
2024-10-17 13-47-18.465 [Debug] (Server) Group: a2c3d797-e2a7-978e-7c7e-f9e8b29a0d87, stream: b_bluetooth
2024-10-17 13-47-18.465 [Debug] (Server) Sending codec header to dc:a6:32:21:21:47
2024-10-17 13-47-18.466 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5148, refers: 0
2024-10-17 13-47-18.466 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5148, refers: 0, sent: 55341,392954, recv: 55341,394446
2024-10-17 13-47-18.467 [Debug] (ControlSessionHTTP) read: 509, method: GET, content type: , target: /stream, body:
2024-10-17 13-47-18.467 [Debug] (ControlSessionHTTP) websocket upgrade, target: /stream
2024-10-17 13-47-18.468 [Debug] (StreamSessionWS) StreamSessionWS
2024-10-17 13-47-18.468 [Debug] (Server) onNewSession
2024-10-17 13-47-18.468 [Debug] (StreamSessionWS) start
2024-10-17 13-47-18.468 [Debug] (ControlSessionHTTP) ControlSessionHttp::~ControlSessionHttp()
2024-10-17 13-47-18.476 [Debug] (StreamSessionWS) on_read_ws, ec: system:0, bytes_transferred: 246
2024-10-17 13-47-18.476 [Debug] (StreamSessionWS) getNextMessage: Hello, size: 246, id: 236, refers: 0
2024-10-17 13-47-18.476 [Debug] (Server) onMessageReceived: Hello, size: 246, id: 236, refers: 0, sent: 233,633378, recv: 55341,404571
2024-10-17 13-47-18.477 [Info] (Server) Hello from 12e187f6-9851-43df-a7b3-366f097bf20e, host: Snapweb client, v0.8.0, ClientName: snapweb, OS: Linux x86_64, Arch: web, Protocol version: 2
2024-10-17 13-47-18.477 [Debug] (Server) Sending ServerSettings to 12e187f6-9851-43df-a7b3-366f097bf20e
2024-10-17 13-47-18.477 [Debug] (Server) Group: f3746db7-5521-7fe5-db72-a6b5d38b8ad8, stream: b_bluetooth
2024-10-17 13-47-18.477 [Debug] (Server) Sending codec header to 12e187f6-9851-43df-a7b3-366f097bf20e
2024-10-17 13-47-18.477 [Info] (ControlServer) Removing 1 inactive session(s), active sessions: 0
2024-10-17 13-47-18.478 [Debug] (StreamSessionWS) on_read_ws, ec: system:0, bytes_transferred: 34
2024-10-17 13-47-18.478 [Debug] (StreamSessionWS) getNextMessage: Time, size: 34, id: 237, refers: 0
2024-10-17 13-47-18.478 [Debug] (Server) onMessageReceived: Time, size: 34, id: 237, refers: 0, sent: 233,633378, recv: 55341,405825
2024-10-17 13-47-18.478 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5149, refers: 0
2024-10-17 13-47-18.479 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5149, refers: 0, sent: 55341,406397, recv: 55341,406805
2024-10-17 13-47-18.480 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5150, refers: 0
2024-10-17 13-47-18.480 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5150, refers: 0, sent: 55341,407516, recv: 55341,407905
2024-10-17 13-47-18.481 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5151, refers: 0
2024-10-17 13-47-18.481 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5151, refers: 0, sent: 55341,408679, recv: 55341,408864
2024-10-17 13-47-18.481 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5152, refers: 0
2024-10-17 13-47-18.481 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5152, refers: 0, sent: 55341,409278, recv: 55341,409448
2024-10-17 13-47-18.482 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5153, refers: 0
2024-10-17 13-47-18.482 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5153, refers: 0, sent: 55341,409820, recv: 55341,409979
2024-10-17 13-47-18.482 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5154, refers: 0
2024-10-17 13-47-18.482 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5154, refers: 0, sent: 55341,410373, recv: 55341,410499
2024-10-17 13-47-18.483 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5155, refers: 0
2024-10-17 13-47-18.483 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5155, refers: 0, sent: 55341,410855, recv: 55341,411024
2024-10-17 13-47-18.483 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5156, refers: 0
2024-10-17 13-47-18.484 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5156, refers: 0, sent: 55341,411440, recv: 55341,411772
2024-10-17 13-47-18.484 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5157, refers: 0
2024-10-17 13-47-18.484 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5157, refers: 0, sent: 55341,412219, recv: 55341,412398
2024-10-17 13-47-18.485 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5158, refers: 0
2024-10-17 13-47-18.485 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5158, refers: 0, sent: 55341,412824, recv: 55341,413031
2024-10-17 13-47-18.485 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5159, refers: 0
2024-10-17 13-47-18.485 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5159, refers: 0, sent: 55341,413429, recv: 55341,413570
2024-10-17 13-47-18.486 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5160, refers: 0
2024-10-17 13-47-18.486 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5160, refers: 0, sent: 55341,413911, recv: 55341,414076
2024-10-17 13-47-18.487 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5161, refers: 0
2024-10-17 13-47-18.487 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5161, refers: 0, sent: 55341,414808, recv: 55341,415067
2024-10-17 13-47-18.488 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5162, refers: 0
2024-10-17 13-47-18.488 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5162, refers: 0, sent: 55341,415516, recv: 55341,415696
2024-10-17 13-47-18.488 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5163, refers: 0
2024-10-17 13-47-18.488 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5163, refers: 0, sent: 55341,416077, recv: 55341,416250
2024-10-17 13-47-18.489 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5164, refers: 0
2024-10-17 13-47-18.489 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5164, refers: 0, sent: 55341,416801, recv: 55341,416981
2024-10-17 13-47-18.489 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5165, refers: 0
2024-10-17 13-47-18.489 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5165, refers: 0, sent: 55341,417381, recv: 55341,417537
2024-10-17 13-47-18.490 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5166, refers: 0
2024-10-17 13-47-18.490 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5166, refers: 0, sent: 55341,417914, recv: 55341,418078
2024-10-17 13-47-18.490 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5167, refers: 0
2024-10-17 13-47-18.491 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5167, refers: 0, sent: 55341,418444, recv: 55341,418624
2024-10-17 13-47-18.491 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5168, refers: 0
2024-10-17 13-47-18.491 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5168, refers: 0, sent: 55341,419004, recv: 55341,419146
2024-10-17 13-47-18.491 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5169, refers: 0
2024-10-17 13-47-18.492 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5169, refers: 0, sent: 55341,419517, recv: 55341,419683
2024-10-17 13-47-18.492 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5170, refers: 0
2024-10-17 13-47-18.492 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5170, refers: 0, sent: 55341,420082, recv: 55341,420303
2024-10-17 13-47-18.493 [Notice] (ControlServer) ControlServer::NewConnection: ::ffff:10.0.0.57
2024-10-17 13-47-18.493 [Debug] (ControlSessionHTTP) ControlSessionHttp, Local IP: ::ffff:10.0.0.29
2024-10-17 13-47-18.493 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5171, refers: 0
2024-10-17 13-47-18.493 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5171, refers: 0, sent: 55341,421071, recv: 55341,421312
2024-10-17 13-47-18.494 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5172, refers: 0
2024-10-17 13-47-18.494 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5172, refers: 0, sent: 55341,421841, recv: 55341,421997
2024-10-17 13-47-18.494 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5173, refers: 0
2024-10-17 13-47-18.494 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5173, refers: 0, sent: 55341,422372, recv: 55341,422540
2024-10-17 13-47-18.495 [Debug] (ControlSessionHTTP) read: 510, method: GET, content type: , target: /jsonrpc, body:
2024-10-17 13-47-18.495 [Debug] (ControlSessionHTTP) getNextMessage: Time, size: 8, id: 5174, refers: 0
2024-10-17 13-47-18.495 [Debug] (Server) websocket upgrade, target: /jsonrpc
2024-10-17 13-47-18.495 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5174, refers: 0, sent: 55341,422946, recv: 55341,423179
2024-10-17 13-47-18.495 [Debug] (ControlSessionWS) ControlSessionWebsocket
2024-10-17 13-47-18.496 [Debug] (ControlSessionHTTP) ControlSessionHttp::~ControlSessionHttp()
2024-10-17 13-47-18.496 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5175, refers: 0
2024-10-17 13-47-18.496 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5175, refers: 0, sent: 55341,423976, recv: 55341,424201
2024-10-17 13-47-18.497 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5176, refers: 0
2024-10-17 13-47-18.497 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5176, refers: 0, sent: 55341,424706, recv: 55341,425106
2024-10-17 13-47-18.498 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5177, refers: 0
2024-10-17 13-47-18.498 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5177, refers: 0, sent: 55341,425588, recv: 55341,425764
2024-10-17 13-47-18.498 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5178, refers: 0
2024-10-17 13-47-18.498 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5178, refers: 0, sent: 55341,426231, recv: 55341,426507
2024-10-17 13-47-18.499 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5179, refers: 0
2024-10-17 13-47-18.499 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5179, refers: 0, sent: 55341,426949, recv: 55341,427259
2024-10-17 13-47-18.500 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5180, refers: 0
2024-10-17 13-47-18.500 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5180, refers: 0, sent: 55341,427713, recv: 55341,427905
2024-10-17 13-47-18.500 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5181, refers: 0
2024-10-17 13-47-18.501 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5181, refers: 0, sent: 55341,428396, recv: 55341,428602
2024-10-17 13-47-18.501 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5182, refers: 0
2024-10-17 13-47-18.501 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5182, refers: 0, sent: 55341,429065, recv: 55341,429253
2024-10-17 13-47-18.502 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5183, refers: 0
2024-10-17 13-47-18.502 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5183, refers: 0, sent: 55341,429685, recv: 55341,429854
2024-10-17 13-47-18.502 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5184, refers: 0
2024-10-17 13-47-18.502 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5184, refers: 0, sent: 55341,430249, recv: 55341,430426
2024-10-17 13-47-18.503 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5185, refers: 0
2024-10-17 13-47-18.503 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5185, refers: 0, sent: 55341,430855, recv: 55341,431028
2024-10-17 13-47-18.504 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5186, refers: 0
2024-10-17 13-47-18.504 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5186, refers: 0, sent: 55341,431556, recv: 55341,431765
2024-10-17 13-47-18.505 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5187, refers: 0
2024-10-17 13-47-18.505 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5187, refers: 0, sent: 55341,432455, recv: 55341,433043
2024-10-17 13-47-18.578 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5188, refers: 0
2024-10-17 13-47-18.579 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5188, refers: 0, sent: 55341,506217, recv: 55341,506606
2024-10-17 13-47-18.579 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5189, refers: 0
2024-10-17 13-47-18.579 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5189, refers: 0, sent: 55341,507084, recv: 55341,507290
2024-10-17 13-47-18.580 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5190, refers: 0
2024-10-17 13-47-18.580 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5190, refers: 0, sent: 55341,507747, recv: 55341,507986
2024-10-17 13-47-18.580 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5191, refers: 0
2024-10-17 13-47-18.581 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5191, refers: 0, sent: 55341,508473, recv: 55341,508646
2024-10-17 13-47-18.581 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5192, refers: 0
2024-10-17 13-47-18.581 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5192, refers: 0, sent: 55341,509061, recv: 55341,509280
2024-10-17 13-47-18.582 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5193, refers: 0
2024-10-17 13-47-18.582 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5193, refers: 0, sent: 55341,509862, recv: 55341,510065
2024-10-17 13-47-18.583 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5194, refers: 0
2024-10-17 13-47-18.583 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5194, refers: 0, sent: 55341,510532, recv: 55341,510691
2024-10-17 13-47-18.583 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5195, refers: 0
2024-10-17 13-47-18.583 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5195, refers: 0, sent: 55341,511068, recv: 55341,511288
2024-10-17 13-47-18.584 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5196, refers: 0
2024-10-17 13-47-18.584 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5196, refers: 0, sent: 55341,511715, recv: 55341,511883
2024-10-17 13-47-18.584 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5197, refers: 0
2024-10-17 13-47-18.585 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5197, refers: 0, sent: 55341,512440, recv: 55341,512627
2024-10-17 13-47-18.585 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5198, refers: 0
2024-10-17 13-47-18.585 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5198, refers: 0, sent: 55341,513128, recv: 55341,513375
2024-10-17 13-47-19.480 [Debug] (StreamSessionWS) on_read_ws, ec: system:0, bytes_transferred: 34
2024-10-17 13-47-19.480 [Debug] (StreamSessionWS) getNextMessage: Time, size: 34, id: 238, refers: 0
2024-10-17 13-47-19.481 [Debug] (Server) onMessageReceived: Time, size: 34, id: 238, refers: 0, sent: 234,582494, recv: 55342,408634
2024-10-17 13-47-19.586 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5199, refers: 0
2024-10-17 13-47-19.586 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5199, refers: 0, sent: 55342,513835, recv: 55342,514181
2024-10-17 13-47-20.479 [Debug] (StreamSessionWS) on_read_ws, ec: system:0, bytes_transferred: 34
2024-10-17 13-47-20.480 [Debug] (StreamSessionWS) getNextMessage: Time, size: 34, id: 239, refers: 0
2024-10-17 13-47-20.480 [Debug] (Server) onMessageReceived: Time, size: 34, id: 239, refers: 0, sent: 235,586757, recv: 55343,407686
2024-10-17 13-47-20.577 [Debug] (Server) Saving config
2024-10-17 13-47-20.587 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5200, refers: 0
2024-10-17 13-47-20.587 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5200, refers: 0, sent: 55343,514889, recv: 55343,515211
2024-10-17 13-47-21.479 [Debug] (StreamSessionWS) on_read_ws, ec: system:0, bytes_transferred: 34
2024-10-17 13-47-21.479 [Debug] (StreamSessionWS) getNextMessage: Time, size: 34, id: 240, refers: 0
2024-10-17 13-47-21.480 [Debug] (Server) onMessageReceived: Time, size: 34, id: 240, refers: 0, sent: 236,579410, recv: 55344,407640
2024-10-17 13-47-21.603 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5201, refers: 0
2024-10-17 13-47-21.604 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5201, refers: 0, sent: 55344,531283, recv: 55344,531680
2024-10-17 13-47-22.480 [Debug] (StreamSessionWS) on_read_ws, ec: system:0, bytes_transferred: 34
2024-10-17 13-47-22.480 [Debug] (StreamSessionWS) getNextMessage: Time, size: 34, id: 241, refers: 0
2024-10-17 13-47-22.480 [Debug] (Server) onMessageReceived: Time, size: 34, id: 241, refers: 0, sent: 237,580770, recv: 55345,408182
2024-10-17 13-47-22.605 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5202, refers: 0
2024-10-17 13-47-22.605 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5202, refers: 0, sent: 55345,532395, recv: 55345,532754
2024-10-17 13-47-23.479 [Debug] (StreamSessionWS) on_read_ws, ec: system:0, bytes_transferred: 34
2024-10-17 13-47-23.479 [Debug] (StreamSessionWS) getNextMessage: Time, size: 34, id: 242, refers: 0
2024-10-17 13-47-23.479 [Debug] (Server) onMessageReceived: Time, size: 34, id: 242, refers: 0, sent: 238,582131, recv: 55346,407426
2024-10-17 13-47-23.606 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5203, refers: 0
2024-10-17 13-47-23.606 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5203, refers: 0, sent: 55346,533415, recv: 55346,533780
2024-10-17 13-47-24.476 [Debug] (StreamSessionWS) on_read_ws, ec: system:0, bytes_transferred: 34
2024-10-17 13-47-24.476 [Debug] (StreamSessionWS) getNextMessage: Time, size: 34, id: 243, refers: 0
2024-10-17 13-47-24.477 [Debug] (Server) onMessageReceived: Time, size: 34, id: 243, refers: 0, sent: 239,586394, recv: 55347,404705
2024-10-17 13-47-24.607 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5204, refers: 0
2024-10-17 13-47-24.607 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5204, refers: 0, sent: 55347,534397, recv: 55347,534740
2024-10-17 13-47-25.481 [Debug] (StreamSessionWS) on_read_ws, ec: system:0, bytes_transferred: 34
2024-10-17 13-47-25.481 [Debug] (StreamSessionWS) getNextMessage: Time, size: 34, id: 244, refers: 0
2024-10-17 13-47-25.481 [Debug] (Server) onMessageReceived: Time, size: 34, id: 244, refers: 0, sent: 240,579047, recv: 55348,408929
2024-10-17 13-47-25.543 [Notice] (ControlServer) ControlServer::NewConnection: ::ffff:10.0.0.57
2024-10-17 13-47-25.543 [Debug] (ControlSessionHTTP) ControlSessionHttp, Local IP: ::ffff:10.0.0.29
2024-10-17 13-47-25.544 [Info] (ControlServer) Removing 1 inactive session(s), active sessions: 2
2024-10-17 13-47-25.547 [Debug] (ControlSessionHTTP) read: 431, method: GET, content type: , target: /, body:
2024-10-17 13-47-25.547 [Debug] (ControlSessionHTTP) path: /nix/store/97yf85wzvddaks1s4q3zxqyn35bfn6fq-snapweb-v0.8.0/share/html/index.html
2024-10-17 13-47-25.568 [Debug] (ControlSessionWS) ControlSessionWebsocket::~ControlSessionWebsocket()
2024-10-17 13-47-25.568 [Debug] (StreamSessionWS) on_read_ws, ec: boost.beast.websocket:1, bytes_transferred: 0
2024-10-17 13-47-25.568 [Info] (StreamServer) onDisconnect: 12e187f6-9851-43df-a7b3-366f097bf20e
2024-10-17 13-47-25.568 [Debug] (StreamServer) sessions: 2
2024-10-17 13-47-25.568 [Debug] (StreamServer) sessions: 1
2024-10-17 13-47-25.569 [Info] (ControlServer) Removing 1 inactive session(s), active sessions: 1
2024-10-17 13-47-25.569 [Debug] (StreamSessionWS) ~StreamSessionWS
2024-10-17 13-47-25.598 [Debug] (ControlSessionHTTP) read: 396, method: GET, content type: , target: /assets/index-BYMjFABP.js, body:
2024-10-17 13-47-25.598 [Debug] (ControlSessionHTTP) path: /nix/store/97yf85wzvddaks1s4q3zxqyn35bfn6fq-snapweb-v0.8.0/share/html/assets/index-BYMjFABP.js
2024-10-17 13-47-25.604 [Notice] (ControlServer) ControlServer::NewConnection: ::ffff:10.0.0.57
2024-10-17 13-47-25.604 [Debug] (ControlSessionHTTP) ControlSessionHttp, Local IP: ::ffff:10.0.0.29
2024-10-17 13-47-25.605 [Debug] (ControlSessionHTTP) read: 412, method: GET, content type: , target: /assets/index-BDBx6C_I.css, body:
2024-10-17 13-47-25.605 [Debug] (ControlSessionHTTP) path: /nix/store/97yf85wzvddaks1s4q3zxqyn35bfn6fq-snapweb-v0.8.0/share/html/assets/index-BDBx6C_I.css
2024-10-17 13-47-25.606 [Notice] (ControlServer) ControlServer::NewConnection: ::ffff:10.0.0.57
2024-10-17 13-47-25.607 [Debug] (ControlSessionHTTP) ControlSessionHttp, Local IP: ::ffff:10.0.0.29
2024-10-17 13-47-25.607 [Debug] (ControlSessionHTTP) read: 341, method: GET, content type: , target: /registerSW.js, body:
2024-10-17 13-47-25.607 [Debug] (ControlSessionHTTP) path: /nix/store/97yf85wzvddaks1s4q3zxqyn35bfn6fq-snapweb-v0.8.0/share/html/registerSW.js
2024-10-17 13-47-25.607 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5205, refers: 0
2024-10-17 13-47-25.608 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5205, refers: 0, sent: 55348,535364, recv: 55348,535663
2024-10-17 13-47-25.909 [Notice] (ControlServer) ControlServer::NewConnection: ::ffff:10.0.0.57
2024-10-17 13-47-25.909 [Debug] (ControlSessionHTTP) ControlSessionHttp, Local IP: ::ffff:10.0.0.29
2024-10-17 13-47-25.909 [Debug] (ControlSessionHTTP) read: 510, method: GET, content type: , target: /jsonrpc, body:
2024-10-17 13-47-25.909 [Debug] (ControlSessionHTTP) websocket upgrade, target: /jsonrpc
2024-10-17 13-47-25.910 [Debug] (ControlSessionWS) ControlSessionWebsocket
2024-10-17 13-47-25.910 [Debug] (ControlSessionHTTP) ControlSessionHttp::~ControlSessionHttp()
2024-10-17 13-47-25.965 [Debug] (ControlSessionHTTP) read: 397, method: GET, content type: , target: /logo.svg, body:
2024-10-17 13-47-25.966 [Debug] (ControlSessionHTTP) path: /nix/store/97yf85wzvddaks1s4q3zxqyn35bfn6fq-snapweb-v0.8.0/share/html/logo.svg
2024-10-17 13-47-26.609 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5206, refers: 0
2024-10-17 13-47-26.609 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5206, refers: 0, sent: 55349,536391, recv: 55349,536751
2024-10-17 13-47-27.610 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5207, refers: 0
2024-10-17 13-47-27.610 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5207, refers: 0, sent: 55350,537434, recv: 55350,537976
2024-10-17 13-47-27.965 [Debug] (Server) Saving config
2024-10-17 13-47-28.611 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5208, refers: 0
2024-10-17 13-47-28.611 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5208, refers: 0, sent: 55351,538653, recv: 55351,539050
2024-10-17 13-47-29.612 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5209, refers: 0
2024-10-17 13-47-29.612 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5209, refers: 0, sent: 55352,539706, recv: 55352,540120
2024-10-17 13-47-30.613 [Debug] (StreamSessionTCP) getNextMessage: Time, size: 8, id: 5210, refers: 0
2024-10-17 13-47-30.613 [Debug] (Server) onMessageReceived: Time, size: 8, id: 5210, refers: 0, sent: 55353,540754, recv: 55353,541279
^C2024-10-17 13-47-31.499 [Info] (Snapserver) Received signal 2: Interrupt
2024-10-17 13-47-31.500 [Info] (Snapserver) Stopping streamServer
2024-10-17 13-47-31.500 [Info] (ControlServer) Removing 1 inactive session(s), active sessions: 4
2024-10-17 13-47-31.501 [Debug] (StreamSessionTCP) stop
2024-10-17 13-47-31.501 [Debug] (StreamSessionTCP) stopped
2024-10-17 13-47-31.501 [Info] (Snapserver) done
2024-10-17 13-47-31.501 [Debug] (ControlSessionWS) ControlSessionWebsocket::~ControlSessionWebsocket()
2024-10-17 13-47-31.502 [Debug] (ControlSessionHTTP) ControlSessionHttp::~ControlSessionHttp()
2024-10-17 13-47-31.502 [Debug] (ControlSessionHTTP) ControlSessionHttp::~ControlSessionHttp()
2024-10-17 13-47-31.502 [Debug] (ControlSessionHTTP) ControlSessionHttp::~ControlSessionHttp()
2024-10-17 13-47-31.503 [Debug] (StreamSessionTCP) ~StreamSessionTcp
2024-10-17 13-47-31.503 [Debug] (StreamSessionTCP) stop
2024-10-17 13-47-31.505 [Notice] (Snapserver) Snapserver terminated.

@goshansp
Copy link

I seem have hit the exact same issue on 0.29.0 . Despite having the source = meta: as the first [stream] entry in snapserver.conf after startup it will always select the entry after source = meta: as the active source. I've ruled out any caching and tried some permutations without success.

From @erahhal and my own logs we can see that source = meta: gets parsed correctly in order but then it somehow ends up being added after all other source = as the last entry.

How an the source = meta: be made the default source for start up? Any workaround (API call needed?) would be appreciated.

@badaix Could this be a snapcast defect or is it due to misconfiguration on our side ?

@goshansp
Copy link

Cause
Meta source is created after non-meta-sources, because it's checking if the source names exist

Workaround ?
How can the initial source be set automatically? Jsonrpc via snapweb seems to be the only known workaround at the moment. This requires a script that gets the group ids and then fires something like curl -X POST http://<hostname>:1780/jsonrpc \ -H "Content-Type: application/json" \ -d '{ "id": 3, "jsonrpc": "2.0", "method": "Group.SetStream", "params": { "id": "f01f8b1a-b3fc-d9ae-9ba0-e835a8aff1ca", "stream_id": "Metasource" } }' ... then add this as a ExecStartPost in systemd unit?

Feature Request Options ?

  • Amend the metasource as the first element to the source list? (May break existing configurations)
  • Introduce config parameter initial_source=<metasource_name>? (Requires a warning in the documentation)
  • Implement the keeping of the original order for sources list? (Fav)

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

No branches or pull requests

2 participants