catnip icon indicating copy to clipboard operation
catnip copied to clipboard

terminal audio visualizer for linux/unix/macOS/windblows*

catnip

love made-with-go betamax-was-a-thing

terminal audio visualizer for linux/unix/macOS/windows*

it supports audio backends

  • ALSA (linux FFmpeg)
  • AVFoundation (macOS FFmpeg)
  • DirectShow (windblows FFmpeg)
  • PortAudio (linux/macOS/windblows)
  • PulseAudio (parec/FFmpeg)

it depends on

  • go modules

    • github.com/nsf/termbox-go
    • github.com/integrii/flaggy
    • github.com/pkg/errors
    • github.com/lawl/pulseaudio
    • gonum.org/v1/gonum
  • binaries

    • ffmpeg (required for FFmpeg backends)
    • parec (required for PulseAudio backend with parec)
  • c libraries (optional, requires CGO - CGO_ENABLED=1)

    • fftw (fftw3) (enable with -tags withfftw)
    • portaudio (portaudio-2.0) (enable with -tags withportaudio)

get it

# get source
git clone https://github.com/noriah/catnip.git

# cd to dir
cd catnip

# build and install catnip
go install

# with portaudio
go install -tags withportaudio

# with fftw3
go install -tags withfftw

# with both portaudio and fftw3
go install -tags withportaudio,withfftw

run it

  • use catnip list-backends to show available backends
  • use catnip -b {backend} list-devices to show available devices
  • use catnip -b {backend} -d {device} to run - use the full device name
  • use catnip -h for information on several more customizations

question it

catnip?

long story, short explanation

update