As implemented in issue #3 and explained in this comment, the mix.monitor control is only determined/set by -m play,mon -s mon appearing/appending to the end of the sndiod(8) flags set in rcctl(8). Upon further use and reflection, this has a few (potential?) problems:
- I'm unsure if a sub-device can be defined with the
-s option if no audio device has been defined with prior -f/-F options
- There may be issues if a
snd/default sub-device (i.e. -s default) is not defined for any audio device specified prior to the snd/mon (i.e. -s mon) sub-device being defined
- If multiple sndio(7) audio devices are specified with the
-f and/or -F options, the snd/mon sub-device (i.e. -s mon) will only be added to the last device defined. This may not be intended or correct.
- There is an order to the various options, especially regarding whether they must be specified before audio device (
-f/-F) options or sub-device (-s) options; per sndiod(8):
"On the command line, per-device parameters (-aew) must precede the device definition (-f), and per-sub-device parameters (-Ccjmtvx) must precede the sub-device definition (-s). Sub-device definitions (-s) must follow the definition of the device (-f) to which they are attached.
If no audio devices (-f) are specified, settings are applied as if the default device is specified. If no sub-devices (-s) are specified for a device, a default sub-device is created attached to it. If a device (-f) is defined twice, both definitions are merged: parameters of the first one are used but sub-devices (-s) of both definitions are created. The default sndio(7) device used by sndiod is rsnd/0, and the default sub-device exposed by sndiod is snd/default."
As implemented in issue #3 and explained in this comment, the
mix.monitorcontrol is only determined/set by-m play,mon -s monappearing/appending to the end of the sndiod(8) flags set in rcctl(8). Upon further use and reflection, this has a few (potential?) problems:-soption if no audio device has been defined with prior-f/-Foptionssnd/defaultsub-device (i.e.-s default) is not defined for any audio device specified prior to thesnd/mon(i.e.-s mon) sub-device being defined-fand/or-Foptions, thesnd/monsub-device (i.e.-s mon) will only be added to the last device defined. This may not be intended or correct.-f/-F) options or sub-device (-s) options; per sndiod(8):