This is a forked project from https://gitlab.com/mpv-ipc/ncmpvc.
A ncurses client for mpv which connects to existing mpv instances through sockets, written in Rust.
This tool is inspired by ncmpcpp, a curses based client for the Music Player Daemon. It makes use of mpv's JSON IPC protocol to control any mpv instance over a given socket.
WARNING: This app is in early development stage and will contain bugs. If you are a bug-hunter, feel free to use the app and report bugs at the Issue Tracker.
Make sure mpv is started with the following option:
$ mpv --input-ipc-server=/tmp/mpvsocket ...
mpv
cargo
(makedep)ncurses
- Arch -
yay -S ncmpvc-git
If you have packaged mpvc for your distribution, let me know so I can add it here.
Use "cargo build --release" to build the program. The output binary will be found in 'target/release/'
Make sure mpv is started with the following option:
$ mpv --input-ipc-server=/tmp/mpvsocket --idle
At the moment ncmpvc does not launch mpv instances, so the instances have to be launched beforehand. Also, the path to the socket is hardcoded to /tmp/mpvsocket
. It will be possible in the future to read this from a configuration file.
I'm not sure yet where to go with this project so this might change in the future.
To control mpv without a user interface I suggest the use of mpvc.
Key | Feature | Comment |
---|---|---|
Play | ENTER |
|
Scrolling | UP , DOWN , PGUP , PGDOWN |
|
Jump to current song | o |
|
Shuffle playlist | z |
mpv >= v0.26.0 |
Remove from playlist | r |
|
Stop playback | s |
|
Toggle playback | p |
|
Toggle mute | m |
|
Search mode | / |
|
Cancel search mode | ESC |
|
Play next/previous song | > , < |
|
Volume up/down 2% | + , - |
|
Speed up/down 5% | ] , [ |
|
Seek (+/- 5 seconds) | LEFT , RIGHT |
|
Force playlist update | u |
should never be necessary |
Quit ncmpvc | q |
- Implement basic control with keys (see key bindings)
- Header bar with infos about current song
- Status bar with time information
- Ability to search playlist
- Ability to jump to current song
- Ability to add files / playlist (integrated filebrowser)
- Add more player commands:
- Playlist shuffle
- Fast seek
- Increase / decrease speed
- Restart playback
- Ability to change player options
- loop-file
- loop-playlist
- consume mode
- Ability to resize the window
- Ability to configure ncmpvc in a configuration file
- Proper error handling
Check out the Issue Tracker