Skip to main content

Terminal music player with real-time audio visualizer themes

Project description

music-tui

A terminal music player with real-time audio visualizer themes, built with Python + mpv.

 ๐ŸŽต Music TUI   โ–ฒ Fire
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
โ–ถ CITYWLKR - Immortal                     Keys
  Song Two                                j / โ†“    Move down
  Song Three                              k / โ†‘    Move up
                                          Enter    Play selected
                                          Space    Play / Pause
                                          n        Next track
                                          p        Prev track
                                          โ† / โ†’   Seek ยฑ5 s
                                          +/-      Volume
                                          m        Mute
                                          s        Shuffle
                                          r        Repeat
                                          t        Next theme
                                          q        Quit
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
  โ–ฒโ–ฒ  โ–ˆโ–ˆโ–ˆโ–ˆ โ–ˆโ–ˆโ–ˆ  โ–ˆโ–ˆ  โ–ˆโ–ˆโ–ˆโ–ˆ โ–ฒโ–ฒโ–ฒ โ–ˆโ–ˆโ–ˆโ–ˆ  โ–ˆโ–ˆโ–ˆ โ–ฒโ–ฒ  โ–ˆโ–ˆโ–ˆโ–ˆ โ–ˆโ–ˆโ–ˆ โ–ˆโ–ˆ โ–ˆโ–ˆโ–ˆโ–ˆ
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
โ–ถ  CITYWLKR - Immortal
   01:23 / 03:45   36%
   โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘
   vol: +/-   mute: m   seek: โ†โ†’   theme: t

Features

  • Browse and play audio files from ~/Music (recursive)
  • Supports .mp3, .flac, .wav, .ogg, .m4a, .aac, .opus, .wma
  • 6 visualizer themes โ€” cycle with t:
    • โ–‡ Bars โ€” smooth sub-character bars, green โ†’ yellow โ†’ red
    • โˆฟ Wave โ€” filled waveform with a bright crest line
    • โ—ˆ Spectrum โ€” symmetric bars expanding from center
    • โŒ˜ Matrix โ€” green falling matrix characters
    • โ˜… Neon โ€” rainbow frequency bars
    • โ–ฒ Fire โ€” heat-gradient bars, white-hot at the base
  • Real FFT visualization from PulseAudio monitor (when sounddevice+numpy installed)
  • Animated fallback visualizer when audio capture is unavailable
  • Shuffle, repeat, seek, volume control

Requirements

  • Linux with mpv installed
  • Python 3.9+
# Ubuntu / Debian
sudo apt install mpv

Installation

pip install music-tui

For real-time FFT visualization (reads audio from PulseAudio):

pip install "music-tui[visualizer]"

Usage

music-tui

Drop audio files into ~/Music (any subfolder works) and launch.

Keyboard shortcuts

Key Action
j / โ†“ Move down
k / โ†‘ Move up
Enter Play selected
Space Play / Pause
n / p Next / Previous track
โ† / โ†’ Seek ยฑ5 seconds
+ / - Volume up / down
m Mute
s Toggle shuffle
r Toggle repeat
t Cycle visualizer theme
q Quit

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sahil_music_tui-0.1.4-py3-none-any.whl (12.4 kB view details)

Uploaded Python 3

File details

Details for the file sahil_music_tui-0.1.4-py3-none-any.whl.

File metadata

File hashes

Hashes for sahil_music_tui-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 2c1867784bb36df9f6b71883f08609597151d69fd3b6f27a321c3970c4cbc605
MD5 1cd610247a0c1108b461ea1f51665e75
BLAKE2b-256 e849389096451edc14a50c371c67cb1700b61df666eb5d6a70ded369c187c071

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page