Prototype (!!!) of a crossplattform terminal music and video player. Inspired by moc and mpd.
Uses the mighty mpv
as audio backend.
'mukke' is a german slang for music.
Warning, this is not "production grade", use the network enabled muk/mukd in trusted networks only!
Pane | KEY | Action |
---|---|---|
BOTH | {TAB} | Switch Pane Filesystem <-> Playlist |
BOTH | {j}/{k}/{DOWN}/{UP} | DOWN/UP Selection |
BOTH | {h}/{l}/{LEFT}/{RIGHT} | Seek backwards/forwards |
BOTH | {ShiftH}/{ShiftL}/{LeftBracket}/{RightBracket} | Seek backwards/forwards faster |
BOTH | {-}/{+} | Volume DOWN/UP |
BOTH | {ShiftJ, ShifK} | Next/Previous song |
BOTH | {Enter} | Play/Open |
BOTH | {m} | Mute/Unmute |
BOTH | {p}/{space} | Pause/Resum |
BOTH | {r} | Cycle Repeat Modes |
BOTH | {v} | Show/Hide video |
BOTH | {t} | playlist / filesystem fullscreen |
BOTH | {ShiftC} | Clear the playlist |
BOTH | {i} | Open debug log / song information |
BOTH | {,} | Local Filesystem |
BOTH | {.} | Remote Filesystem |
BOTH | {g}/{/} | Search |
BOTH | ||
BOTH | {ESC} | Exit out of search/help/lyrics etc. |
BOTH | left Mouse | highlight, seek, etc. |
BOTH | right Mouse | activate (play/add,etc) |
BOTH | {q} | quit muk (the gui) |
BOTH | {ShiftQ} | quit mukd (the server) if allowed |
Filesystem | ||
Filesystem | {:}/{Backspace} | One folder up |
Filesystem | {a} | Add song/directory to playlist |
Playlist | {d}/ |
Remove a song from the playlist |
Playlist | {o} | select the song that is played currently |
Playlist |
- Network Client/Server
- standalone gui
- standalone audio backend
- network code
- Username/Password auth
- secure networking
- Encryption
- Secure login
- (gui) local filesystem
- (gui) remote filesystem -> browse server filesystem from gui
- One click, up and
download, music from client <-> server - Lyric fetcher (not yet intigrated)
- Cross platform
- Linux
- Windows
-
Macos(low priority; need testers; will not provide binaries; if you like muk build it yourself; sorry) - ssh, tmux (no mouse support), etc..
- Video support when running on a window manager
- mouse support (partial ATM)
-
music library(low priority, you have a clean music folder right? ;) - custom keybindings (requires recompilation ATM)
- custom colorscheme (low priority)
- Playlist support (partial, only the current playlist is saved)
auth add -u username -p password
when muc is connected to a remote mukd, and you add files from your local filesystem, files are automatically uploaded to the mukd server (if enabled).
Muk/Mukd is network enabled TODO document the network protocol
TODO
install via nimble:nimble install muk
linux, windows,macosbinaries on the release page
TODO
- install libmpv dev
- build:
nim c -d:release --opt:speed mukd.nim
- 0.1.0 (First usable version)
- 0.0.1 (Prototype)
- Nim (programming language)
- illwill (terminal library for nim)
- illwillWidgets (widget library for illwill)
- mpv/libmpv (music/video backend)
- LyricFetcher (mostly done but not included)