Sendspin in Zig, both sides of it: a player client, and a server that streams to players in step.
Four modules, so that a player carries no server, and no mDNS, it does not use.
| Module | Depends on | |
|---|---|---|
sendspin | zig-websocket, tls.zig, zig-flac, zig-opus, zig-noise, zig-std-crypto-ext | The player client: the connection, the messages, the clock, the scheduler, pairing. |
sendspin_listener | sendspin, and zig-http | Where a server connects to a player, for the server-initiated direction. |
sendspin_server | sendspin, zig-http, zig-resample | The server: connections, groups, streams in every format, metadata, artwork, pairing. |
sendspin_discovery | sendspin, zig-avahi, zig-dns-client | Advertising a player or server by mDNS, through Avahi or on its own, and finding players. |