audioplay(1) on Solnix vs Linux and the BSDs

On Solnix, audioplay is the illumos audioplay at /usr/bin/audioplay. Among the counterparts in the bundle only NetBSD ships audioplay, and its flags differ: -v takes 0 to 255 there but 0 to 100 on Solnix, and the default device and environment variables are different. Linux, FreeBSD and OpenBSD have no counterpart page in the bundle.

What Solnix runs

A default Solnix system runs the illumos audioplay at /usr/bin/audioplay. No other variants are shipped. The bundle contains no Linux, FreeBSD or OpenBSD audioplay page, so nothing is claimed about those systems.

Differences

Compared withTopicWhat differs
NetBSDdefault audio deviceSolnix audioplay uses /dev/audio by default. NetBSD uses /dev/sound by default. A script that hard-codes either path will not work on the other system.
Source: Solnix audioplay(1) -d; NetBSD audioplay(1) -d
NetBSDenvironment variablesSolnix reads AUDIODEV for the device and AUDIOPATH for a search path for relative file names. NetBSD documents AUDIODEVICE and AUDIOCTLDEVICE instead, and no search path variable.
Source: Solnix audioplay(1) ENVIRONMENT VARIABLES; NetBSD audioplay(1) ENVIRONMENT
NetBSD-v volume rangeSolnix -v takes an integer from 0 to 100 and resets the volume to its previous level when audioplay exits. NetBSD -v takes 0 to 255 and the page does not say it restores the level.
Source: Solnix audioplay(1) -v; NetBSD audioplay(1) -v
NetBSD-V meaningOn Solnix, -V prints messages on standard error when waiting for the device or when a sample-rate deviation is detected. On NetBSD, -V is documented only as 'Be verbose'. NetBSD -q ('Be quiet') has no Solnix equivalent.
Source: Solnix audioplay(1) -V; NetBSD audioplay(1) -V, -q
NetBSDoptions missing on SolnixSolnix has no -f, -c, -e, -P or -s to force a format or override channels, encoding, precision and sample rate. It also has no -n (parse only), -b (balance), -B (block size) or -p (output port). Solnix skips files whose header the device cannot match.
Source: Solnix audioplay(1) SYNOPSIS, DESCRIPTION; NetBSD audioplay(1) -f, -c, -e, -P, -s, -n, -b, -B, -p
NetBSDhelp optionSolnix prints usage with -?. NetBSD uses -h. The Solnix SYNOPSIS does not list -h.
Source: Solnix audioplay(1) OPTIONS -?; NetBSD audioplay(1) -h
NetBSDstandard input handlingBoth read standard input when no file is named. Solnix exits with an error if standard input is a tty. The NetBSD page does not describe the tty case. Both require a valid audio file header in the input.
Source: Solnix audioplay(1) DESCRIPTION, OPERANDS; NetBSD audioplay(1) DESCRIPTION
NetBSDsupported file formatsSolnix documents ADPCM (G.721) mono decompression and limited format conversion, and suggests audioconvert for other formats. NetBSD says it plays Sun/NeXT audio files and RIFF WAVE files, including native-size IEEE floating point WAVE data. The Solnix page does not mention WAVE.
Source: Solnix audioplay(1) DESCRIPTION, BUGS; NetBSD audioplay(1) NOTES
NetBSDlarge filesThe Solnix page refers to largefile(7) for behaviour with files of 2 Gbyte or more. The NetBSD page says nothing about large files.
Source: Solnix audioplay(1) USAGE; NetBSD audioplay(1)

Standards

  • POSIX: audioplay is not a POSIX.1-2024 utility.
  • NetBSD: The HISTORY section says audioplay was first seen in SunOS 5 and first made available in NetBSD 1.4. The page cites no standard.

Writing portable scripts

  • Do not rely on audioplay existing everywhere. The bundle shows it only on Solnix (illumos) and NetBSD, and it has no counterpart page for Linux, FreeBSD or OpenBSD.
  • Pass the device explicitly with -d, since the default is /dev/audio on Solnix and /dev/sound on NetBSD, and avoid -v in portable scripts because its range differs (0-100 vs 0-255).

Every difference here is taken from the manual pages linked above: Solnix's published page, Linux (man-pages and the GNU and util-linux manuals), FreeBSD, OpenBSD and NetBSD. Each row names its source. Where a manual is silent, this page is too. Compiled 2026-10-26. Found a mistake? Mail hackers@lists.solnix.io.