Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/BonnyAD9/uamp
Universal Advanced Music Player written in Rust using Iced.
https://github.com/BonnyAD9/uamp
iced-rs music-player rust
Last synced: 15 days ago
JSON representation
Universal Advanced Music Player written in Rust using Iced.
- Host: GitHub
- URL: https://github.com/BonnyAD9/uamp
- Owner: BonnyAD9
- License: gpl-3.0
- Created: 2023-05-12T16:25:52.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2024-06-12T13:49:21.000Z (15 days ago)
- Last Synced: 2024-06-12T13:59:15.250Z (15 days ago)
- Topics: iced-rs, music-player, rust
- Language: Rust
- Homepage:
- Size: 960 KB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Roadmap: ROADMAP.md
Lists
- awesome-stars - BonnyAD9/uamp - Universal Advanced Music Player written in Rust using Iced. (Rust)
README
# uamp
Universal Advanced Music Player written in Rust using Iced.(May not be as advanced yet)
## Configuration
The configuration is saved in the efault configuration folder on your
platform, on linux that is `~/.config/uamp`.The only file that should be edited by the user is `config.json`.
## Global shortcuts
If you enable shortcuts in the configuration, this is what they are:
- **`Ctrl` + `Alt` + `Home`:** Play/Pause
- **`Ctrl` + `Alt` + `PgUp`:** Previous song
- **`Ctrl` + `Alt` + `PgDown`:** Next song
- **`Ctrl` + `Alt` + `Up`:** Volume up
- **`Ctrl` + `Alt` + `Down`:** Volume down
- **`Ctrl` + `Alt` + `Left`:** Rewind
- **`Ctrl` + `Alt` + `Right`:** Fast forward
You can customize the shortcuts in `config.json`For example to play/pause you can use the command:
```
uamp instance play-pause
```
or the short version
```
uamp i pp
```## CLI
This is the output of help:
```
Welcome in uamp by BonnyAD9
Version 0.4.0Usage:
uamp
starts the gui of the playeruamp [action] [--] [action] ... [flags]
does the given actionFlags:
-p --port
Sets the port for the server comunication. If used when starting gui, it
will disable config saves.-a --address
Sets the server address for the comunication. If used when starting gui, it
will disable config saves.Actions:
i instance [--]
operates on a running instance of uamph help -h -? --help
shows help, with no argument whole help, with arguments only help specific
to the given option.
Available options are: basic, i instanceInstance actions:
info
Shows the info about the playback of the currently runing instance.play-pause pp[=(play|pause)]
Play or pause, when without argument, toggle between the states
playing and paused.volume-up vol-up vu[=]
Increase the volume by the given amount. If the parameter is not
present, increase by the default amountvolume-down vol-down vd[=]
Decrease the volume by the given amount. If the parameter is not
present, decrease by the default amountnext-song ns[=]
Jump to the next song, arguments specifies how much to jump (e.g.
with argument '2' skips one song and plays the next).previous-song ps[=]
Jump to the previous song, arguments specifies how much to jump
(e.g. with argument '2' skips the previous song and plays the
second previous song).volume vol v=
Set the volume to the given value. Value must be in range from 0 to 1mute[=]
Mute/Unmute, if the argument is not specified, toggles between
the statesload-songs
Look for new songs.shuffle-playlist shuffle
Shuffles the current playlist.exit close x
Exits the instanceseek-to seek=
Seeks to the given timestamp. Timestamp is in format 'h:m:s'.fast-forward ff[=]
Seeks forward by the given amout in seconds. If the parameter is not
present, seek by the default amount.rewind rw[=]
Seeks backward by the given amout in seconds. If the parameter is not
present, seek by the default amount.save
Triggers save (saves only if there is change)
```## How it looks
![image](https://github.com/BonnyAD9/uamp/assets/46282097/639c9849-f0f2-4fad-91f3-949ef68e9a3e)## How to get it
To use the player you have to compile it yourself, but that shouldn't be any
problem because all you need is `cargo`:
```
cargo build -r
```
the binary will be `./target/release/uamp`. It doesn't depend on any other
files.## Links
- **Author:** [BonnyAD9](https://github.com/BonnyAD9)
- **GitHub repository:** [BonnyAD9/makemake-rs](https://github.com/BonnyAD9/uamp)
- **My website:** [bonnyad9.github.io](https://bonnyad9.github.io/)