LinuxCommandLibrary

cacademo

Display animated ASCII art in the terminal

TLDR

View an animation

$ cacademo
copy

SYNOPSIS

cacademo [-h] [-D device] [-r rate] [-f format] [-c channels] [-P period_size] [-B buffer_size]

PARAMETERS

-h
    Show summary of options

-D device
    Specify PCM device name (default: default)

-r rate
    Specify sample rate in Hz (default: 48000)

-f format
    Specify sample format (e.g., S16_LE; default: native)

-c channels
    Specify number of channels (default: 2)

-P period_size
    Specify period size in frames (default: native)

-B buffer_size
    Specify buffer size in frames (default: native)

DESCRIPTION

Cacademo is a demonstration program from the ALSA (Advanced Linux Sound Architecture) utils package. It tests sound card capabilities by playing a sequence of generated audio signals, including sine waves, square waves, triangle waves, sawtooth waves, white noise, ring modulation, FM synthesis, and basic speech. Each segment displays console output with parameters like frequency and duration.

Ideal for verifying new hardware setups, driver configurations, or PCM device functionality. It exercises various sample rates, formats, and channels. By default, it uses the system's default PCM device and standard parameters (48kHz, 16-bit, stereo). Output can be loud and cacophonous—hence the name—testing limits without external files.

Press Ctrl+C to interrupt. Useful for debugging underruns or hardware issues.

CAVEATS

Produces loud, annoying sounds—lower volume first. May cause underruns on slow systems or poor drivers. No playback control beyond Ctrl+C.

DEMO SEQUENCE

Card info, sine (440Hz), square, triangle, sawtooth, noise, ring mod, FM synth, speech.
Total ~30-60 seconds.

INSTALLATION

Install via alsa-utils package: apt install alsa-utils or yum install alsa-utils.

HISTORY

Part of alsa-utils since early 2000s; created by Jaroslav Kysela for ALSA testing. Remains in modern distributions for legacy hardware validation.

SEE ALSO

Copied to clipboard