tmuzika provides a fast and simple way to enjoy music directly from the terminal. Built with C, it leverages ncurses for a user-friendly interface and GStreamer for audio playback. With features like an integrated file manager and customizable playlists, tmuzika caters to both casual listeners and music enthusiasts.
tmuzika is a terminal-based music player meticulously crafted in C, utilizing the power of ncurses for an intuitive user interface and GStreamer for seamless audio playback. This project aims to provide a fast and simple way to enjoy music directly from the command line, offering users complete keyboard control over their playback experience. User configuration and data are conveniently stored in ~/.tmuzika, ensuring a smooth setup and personalized usage.
Key Features
- Terminal Music Playback: Enjoy a broad range of supported audio formats, including
mp3,wav,flac,ogg,m4a,aac, andopus. - Radio Station Playback: Listen to your favorite radio stations directly through the terminal with ease.
- Integrated File Manager: Manage your music files efficiently with features like copy, cut, paste, rename, delete, and undo, along with bookmark functionality for quick access.
- Playlist Management: Save and load
.m3uplaylists and keep track of last played songs or radio stations. - Keyboard Navigation: Scroll through music and radio station lists using either keyboard or scroll wheel for enhanced convenience.
Key Bindings
Playback Controls:
| Key | Action |
|---|---|
| ENTER | Play selected song |
| SPACE | Pause / Continue |
| b / n | Scroll left/right |
| z | Stop playback |
| > / < | Next / Previous song |
| + / - | Volume up / down |
| <- / -> | Jump ±10 seconds |
| HOME / END | First / Last song |
| p | Repeat song |
| l | Repeat playlist |
| e | Shuffle |
| s | Search |
| m | Open File Manager |
| q | Save playlist (.m3u) |
| u | Load playlist |
| v | Go to current song |
| x | Delete song from playlist |
| DELETE | Delete all songs from playlist |
| k | Exit program |
File Management Controls:
| Key | Action |
|---|---|
| ENTER | Enter directory/add song/add .m3u |
| BACKSPACE | Go back |
| ctrl+h | Toggle hidden files |
| f / F | Add folder/add current folder |
| m | Select files/folders |
| ctrl+a | Select all files |
| d | Add multiple files |
| s | Search |
| n | Create new folder |
| t | Create new file |
| F2 | Rename file/folder |
| c | Copy |
| x | Cut |
| v | Paste |
| u | Undo last action |
| DELETE | Remove file/folder |
| ctrl+b | Add bookmark |
| ctrl+d | Remove bookmark |
| 1-9 | Go to bookmark 1–9 |
| ESC | Quit file manager |
CLI Usage
Launch tmuzika directly from the terminal:
# Play a song or playlist
$ tmuzika -p song.mp3
$ tmuzika --play song.mp3
$ tmuzika -p playlist.m3u
$ tmuzika --play playlist.m3u
$ tmuzika -p folder/
$ tmuzika --play folder/
# Play a radio station
$ tmuzika -r radio.mp3
$ tmuzika --radio radio.mp3
$ tmuzika -r http://radiostation
$ tmuzika --radio http://radiostation
# Display help
$ tmuzika -h
$ tmuzika --help
Conky Integration
Once tmuzika is running, it can write playback information to temporary files in /tmp, which allows integration with external tools like Conky to showcase the currently playing track on your desktop. For example:
/tmp/tmuzika_status
/tmp/tmuzika_title
/tmp/tmuzika_artist
/tmp/tmuzika_album
/tmp/tmuzika_track
/tmp/tmuzika_elapsed
/tmp/tmuzika_length
Troubleshooting
Ensure tmuzika is running, check the existence of /tmp/tmuzika_* files, and confirm the Conky update interval is properly set for a seamless experience.
No comments yet.
Sign in to be the first to comment.