IKUMPlay is a terminal-based karaoke machine built with Python.
It lets you search, download, and play karaoke tracks directly from YouTube — complete with synchronized lyrics display.
- 🔎 Search YouTube for karaoke tracks automatically.
- 🎶 Download & Convert audio to MP3 format.
- 🎤 Vocal Remover: separates vocals from instrumentals for karaoke-style playback.
- 📜 Lyrics Support (via synced lyrics API).
- 🖥️ Terminal UI powered by Rich.
- 🗑️ Auto Cleanup: downloaded files are deleted after playback.
Make sure you have the following installed:
Install all dependencies:
pip install -r requirements.txtRun the main script from your terminal:
python main.pyYou will be prompted to enter the song name. IKUMPlay will:
- Search Spotify to extract the song details.
- Search YouTube for a karaoke version.
- Download the track as MP3.
- Remove vocals (if necessary).
- Display lyrics in sync.
- Play the accompaniment through your speakers.
IKUMPlay/
│── main.py # Entry point
│── downloads/ # Temporary downloaded files
|── ascii_arts.json # File comprising of the ascii arts used (Derived from: https://github.com/Sr-vZ/PyAudioPlayer/)
│── requirements.txt # Python dependencies
│── README.md # This file
All temporary files in downloads/ are automatically deleted after playback.
You can also manually clear the folder if needed:
rm -rf downloads/*Designed and Developed by Tsetsegchimeg, 최종우, Azizbek Arzikulov and Prithwis Das
- yt-dlp for downloading YouTube audio.
- Spleeter for source separation.
- Rich for terminal UI.
- SyncedLyrics for lyric fetching.
- Spotipy for Spotify API integration.
Enjoy your karaoke night! 🎉