https://github.com/eshrh/osu-cplayer
fast and featured command line osu! song player built on mpv
https://github.com/eshrh/osu-cplayer
osu song-player urwid
Last synced: 5 months ago
JSON representation
fast and featured command line osu! song player built on mpv
- Host: GitHub
- URL: https://github.com/eshrh/osu-cplayer
- Owner: eshrh
- License: gpl-3.0
- Created: 2019-07-12T10:41:10.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2020-06-22T17:19:44.000Z (about 6 years ago)
- Last Synced: 2025-05-03T01:48:08.146Z (about 1 year ago)
- Topics: osu, song-player, urwid
- Language: Python
- Homepage:
- Size: 817 KB
- Stars: 3
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Development of this project has moved to [gitlab](https://gitlab.com/esrh/osu-cplayer)
# osu-cplayer
Fast, compact, and featured command line osu! song player built on mpv.

## Installation
1. Install osu-cplayer via pip: `pip install osu-cplayer`
2. Install [mpv](https://mpv.io/installation/)
3. On first run, enter the absolute paths of your songs folder, collections.db file and osu!.db file
4. These settings get saved in your home folder as `~/.osupaths` or equivalent.
I've tested this on gnu/linux and macos, and it works. Windows is untested though, I'd appreciate someone trying it out.
## Usage
+ Previous/Next Song: `left`/`right`
+ Move Selection: `up`/`down`, left click, or scroll
+ Play song: `enter` or double click
+ Toggle play/pause: `p`
+ Restart song and play: `r`
+ Quit: `q` or `esc`
+ Add song to queue: `a`
+ Clear queue: `A`
+ Shuffle: `s`
+ Sort alphabetically(default): `S`
+ Sort by date added: `d`
+ Filter: `:` or mouse followed by filter term
+ Reset filter: `esc`
+ Exit text box: any special key or mouse
+ Filter by Collection: `c` or mouse, followed by collection name, and `enter`
+ Open this help page: `?`
## Other
osu!.db reading code is taken from [OsuDbReader](https://github.com/Awlexus/PyOsuDBReader/)
## Dependencies
+ Python 3.6+
+ [python-mpv](https://github.com/jaseg/python-mpv)
+ [urwid](https://github.com/urwid/urwid/wiki/Installation-instructions)
+ [tinytag](https://github.com/devsnd/tinytag)
## TODO
+ holy hell please refactor lmao. If anyone looks at my code, I apologize in advance. This is ultra hacky and I really just wanted to build this to use for myself ASAP