FreeBSD Manual Pages
ICESOUND(1) User Commands ICESOUND(1)
NAME
icesound - play audio files when interesting GUI events happen
SYNOPSIS
icesound [OPTIONS]
DESCRIPTION
The icewm(1) window manager generates so-called GUI events in response
to interesting actions, like opening or closing of application windows,
switching of workspace, etc. GUI events are a property of the X root
window. icewm(1) updates this property whenever a new GUI event
occurs. Interested applications can listen for changes to this
property. There are nearly twenty GUI events defined.
icesound responds to these GUI events by playing audio files. These
sound files are .wav files located in a sounds sub-directory in one of
the icewm(1) configuration directories.
icesound supports several common audio interfaces. These are: ALSA,
OSS and libAO. These must be enabled during configuration. ALSA, OSS
and libAO all require support for libsndfile, which is a very common
library to read audio files.
ALSA
ALSA is rather involved to program and it works, but this could use
more testing. It plays at most one sound at a time.
LibAO
LibAO is a cross-platform audio output library which is a
convenient wrapper around a significant number of common audio
interfaces. It has a simple configuration file which is documented
in the libao.conf(5) manual page.
OSS The Open Sound System (OSS) is a cross-platform sound interface,
which is fully supported by icesound.
When multiple audio interfaces are available icesound will examine them
all until it finds one which it can connect to and then use that one.
By default it prefers them in the order of: AO, ALSA, OSS.
OPTIONS
SPECIFIC OPTIONS
-d, --display=DISPLAY
X11 display used by icewm(1) (default: $DISPLAY).
-s, --sample-dir=DIRECTORY
Specifies a directory with sound files. The default is:
$HOME/.config/icewm/sounds, $HOME/.icewm/sounds, CFGDIR/sounds and
LIBDIR/sounds. See the output of "icewm --directories".
-i, --interface={AO|ALSA|OSS}[,{AO|ALSA|OSS}]*
Specifies the audio output interfaces. One or more of: AO, ALSA,
OSS separated by comma's (",").
-D, --device=DEVICE
Backwards compatibility only: the default device. Please prefer
one of the -A, -O or -S options.
-O, --oss=DEVICE
Specifies the OSS device (default: /dev/dsp).
-A, --alsa=DEVICE
Specifies the ALSA device (default: "default").
-z, --snooze=MILLISECONDS
Specifies the snooze interval between sound events in milliseconds.
Default is 500 milliseconds.
-p, --play=SOUND
Plays the given sound (name or number) and exits.
-l, --list-files
Lists the available sound file paths and exits.
--list-sounds
Lists the supported sound file names and exits.
--list-interfaces
Lists the supported audio interfaces and exits.
-o, --output=FILE
Redirect all output to FILE. A leading tilde or environment
variable is expanded.
-v, --verbose
Be verbose and print some information when sound events occur.
GENERAL OPTIONS
-h, --help
Print a brief usage statement to stdout and exit.
-V, --version
Print the program version to stdout and exit.
-C, --copying
Print copying permissions to stdout for the program and exit.
EXIT STATUS
0 Success.
1 General error.
2 Command line error.
3 Subsystems error (i.e cannot connect to server).
SEE ALSO
icewm(1), libao.conf(5), padsp(1), aplay(1), alsamixer(1).
BUGS
Please report bugs at <https://github.com/bbidulock/icewm/issues>.
AUTHOR
Brian Bidulock <mailto:bidulock@openss7.org>.
See --copying for full copyright notice and copying permissions.
LICENSE
IceWM is licensed under the GNU Library General Public License. See
the COPYING file in the distribution or use the --copying flag to
display copying permissions.
icewm 3.7.3 2025-03-30 ICESOUND(1)
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=icesound&sektion=1&manpath=FreeBSD+Ports+14.3.quarterly>
