https://github.com/Shadlock0133/music-vibes
Desktop app for translating audio output into vibrations
https://github.com/Shadlock0133/music-vibes
audio buttplug rust
Last synced: about 1 year ago
JSON representation
Desktop app for translating audio output into vibrations
- Host: GitHub
- URL: https://github.com/Shadlock0133/music-vibes
- Owner: Shadlock0133
- License: mit
- Created: 2022-01-01T22:06:16.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2025-05-10T21:50:01.000Z (about 1 year ago)
- Last Synced: 2025-05-10T22:21:18.976Z (about 1 year ago)
- Topics: audio, buttplug, rust
- Language: Rust
- Homepage:
- Size: 1.22 MB
- Stars: 30
- Watchers: 3
- Forks: 7
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-buttplug - Music Vibes
README
# Music Vibes - vibe with your music
\[WIP] (Windows-only for now) Translates currently playing audio into
vibrations, using connected [`buttplug`](https://buttplug.io/)-compatible
hardware

## Download
Go to https://github.com/Shadlock0133/music-vibes/releases/latest, and download
"music-vibes.exe" from Assets
## Install from source
If you want to compile program manually from source, here are the steps:
0. You will require working Rust toolchain. You can install it by using [rustup](https://rustup.rs/).
1. Clone the repo with `git clone https://github.com/Shadlock0133/music-vibes.git`
or download it clicking in top-right corner `Code` > `Download ZIP`
2. Install with `cargo install --path .`
3. (optional) You can also build without installing using `cargo build --release`,
which creates executable at `target/release/music-vibes{.exe}`
## Caveats
Created mostly to play around with qdot's excellent `buttplug` and my own
`audio-capture` crate.
Current implementation of cutoff filter is "sharp", that is, it will jump from
zero to above set `min` value, with no smoothing, so be careful with that.
## Start Up Behavior
When the application starts music-vibes will try to connect to buttplug server such as intiface on localhost. If the connection has a timeout it falls back to creating its own server.
You can also specify a different address using the command flag `--server-addr` or `-s`