According to sndio(7), it should be possible for different users
to share a sndio session by sharing the .aucat_cookie:
AUTHENTICATION
If a shared sndiod(1) server is running, for privacy reasons only one
user may have connections to it at a given time (though the same user
could have multiple connections to it). Users are identified by their
session cookie, which is automatically generated by audio or MIDI
applications upon the first connection to the server. The cookie is
stored in $HOME/.aucat_cookie and contains 128 bits of raw random data.
If a session needs to be shared between multiple users, they can connect
to the server using the same cookie.
Testing this, alice connects to the running sndiod with
alice$ play -n synth sin 440 gain -9
which plays just fine. While this keeps playing,
if bob tries to play something, he gets rejected:
bob$ play -n synth sin 440 gain -9
play FAIL formats: can't open output file `default':
If alice makes her cookie available to bob with
alice$ cp ~/.aucat_cookie /tmp/
alice$ chmod a+r /tmp/.aucat_cookie
and bob takes that with
bob$ cp /tmp/.aucat_cookie ~
bob$ chmod 600 ~/.aucat_cookie
he should be able to share the running sndiod session, right?
But he still gets rejected:
bob$ play -n synth sin 440 gain -9
play FAIL formats: can't open output file `default':
This is current/i386.
Am I missing something obvious?
Jan