A lightweight terminal music player with mpv engine and auto-setup
Project description
CLI Music Player (Cthulhu Edition)
A powerful, lightweight terminal-based music player written in Python. It combines a robust local file browser with online streaming capabilities (YouTube, SoundCloud) and a unique visual style featuring a pulsing Cthulhu and synced lyrics.
Features
- Hybrid Playback:
- Local: Plays MP3, FLAC, OGG, WAV, M4A, and more.
- Online: Search and stream directly from YouTube and SoundCloud.
- Robust Engine: Uses
mpvas the core backend for best-in-class format support and stability. - Visuals:
- Pulsing Cthulhu animation.
- Synced Lyrics: Automatic fetching from LRCLib with fallback to Letras.mus.br and Lyrics.ovh.
- Smart Interface:
- Recursive Library: Scan entire folder trees.
- Search Mode: Press
/to find online tracks instantly. - Persistence: Save your default music directory.
- Cross-Platform:
- Linux: Works with system
mpv. - Windows: Automatically downloads a portable
mpvif missing.
- Linux: Works with system
Installation
Via PIP (Recommended)
pip install cli-music-player-cthulhu
Requirements
- Python 3.8+
- Linux: You must install
mpv(e.g.,sudo pacman -S mpvorsudo apt install mpv). - Windows: No extra steps! The player downloads a standalone
mpvon first run if needed.
Usage
Run the player:
musicplayer
# OR open a specific folder:
musicplayer /path/to/music
Controls
| Key | Action |
|---|---|
| Arrow Up/Down | Navigate files / Scroll Lyrics |
| Enter | Play file / Open directory / Select Search Result |
| Space | Play / Pause |
| / | Search Online (YouTube default, use sc: for SoundCloud) |
| l | Toggle Lyrics / Cthulhu View |
| D (Shift+d) | Set current directory as Default (Persistent) |
| n | Next Track |
| p | Previous Track (History-aware) |
| z | Toggle Shuffle Mode |
| R (Shift+r) | Load Recursive Library (all subfolders) |
| B (Shift+b) | Return to Browser Mode |
| + / - | Volume Up / Down |
| Tab | Toggle "Now Playing" View |
| s | Stop |
| q | Quit (or go back) |
Advanced Search
- YouTube: Just type your query (e.g.,
Coldplay Yellow). - SoundCloud: Prefix with
sc:(e.g.,sc:Synthwave mix).
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cli_music_player_cthulhu-0.6.5.tar.gz.
File metadata
- Download URL: cli_music_player_cthulhu-0.6.5.tar.gz
- Upload date:
- Size: 11.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
412513ed4d066740eaae280434ae7cad4f6dbdab994451f8c83aa416ca3a64e8
|
|
| MD5 |
8a10e6f182fc745788dfb16a0961a098
|
|
| BLAKE2b-256 |
732fc52897766cc38ff75108be795c27453225aecf40a3d2bae9da3ec51f38db
|
Provenance
The following attestation bundles were made for cli_music_player_cthulhu-0.6.5.tar.gz:
Publisher:
python-publish.yml on thiagofmendonca/cli-music-player
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cli_music_player_cthulhu-0.6.5.tar.gz -
Subject digest:
412513ed4d066740eaae280434ae7cad4f6dbdab994451f8c83aa416ca3a64e8 - Sigstore transparency entry: 813702975
- Sigstore integration time:
-
Permalink:
thiagofmendonca/cli-music-player@e1ac1270af3a9ee2cb5d6ceb666b261ef957ebb8 -
Branch / Tag:
refs/tags/v0.6.5 - Owner: https://github.com/thiagofmendonca
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@e1ac1270af3a9ee2cb5d6ceb666b261ef957ebb8 -
Trigger Event:
release
-
Statement type:
File details
Details for the file cli_music_player_cthulhu-0.6.5-py3-none-any.whl.
File metadata
- Download URL: cli_music_player_cthulhu-0.6.5-py3-none-any.whl
- Upload date:
- Size: 13.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
26d1d8672d8724c9ee5865fa61dbaefa517c87b400381b52a215fb311c072b66
|
|
| MD5 |
c67de8911db8a41784b4ae6ddf0b6abe
|
|
| BLAKE2b-256 |
7ed36d2ef2b977a5928d39587e2756c9ce47737b3e84dfc2718ee9d1586ae6aa
|
Provenance
The following attestation bundles were made for cli_music_player_cthulhu-0.6.5-py3-none-any.whl:
Publisher:
python-publish.yml on thiagofmendonca/cli-music-player
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cli_music_player_cthulhu-0.6.5-py3-none-any.whl -
Subject digest:
26d1d8672d8724c9ee5865fa61dbaefa517c87b400381b52a215fb311c072b66 - Sigstore transparency entry: 813702979
- Sigstore integration time:
-
Permalink:
thiagofmendonca/cli-music-player@e1ac1270af3a9ee2cb5d6ceb666b261ef957ebb8 -
Branch / Tag:
refs/tags/v0.6.5 - Owner: https://github.com/thiagofmendonca
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@e1ac1270af3a9ee2cb5d6ceb666b261ef957ebb8 -
Trigger Event:
release
-
Statement type: