Crates.io | dmxvis |
lib.rs | dmxvis |
version | 0.1.1 |
source | src |
created_at | 2023-11-01 15:07:01.866958 |
updated_at | 2024-07-26 22:23:35.440594 |
description | High Framerate LSD Audio Visualizer [DMX, WS281x, OpenRGB] |
homepage | |
repository | https://gitlab.com/Romanizer/dmxvis |
max_upload_size | |
id | 1021169 |
size | 650,243 |
Simple Visualizer for Music. Colors can be sent to WS2812 LED strips and DMX light fixtures.
Available for Windows and Linux, MacOS is currently untested.
⚠️ VISUAL EPILEPSY WARNING ⚠️
Any Music works, but the visualizer visualizes best with Dynamic, Uncompressed Music (as in boosting the volume of all instruments to the same level). Fast Music is especially fun. Beware of seizures!
pio/ kicad/
assets/
docs/
rpi/
src/ Cargo.toml Cargo.lock build.rs
The program is compiled to a standalone executable, available for Windows and Linux (support may vary). Find them under Releases.
git clone https://gitlab.com/Romanizer/dmxvis
cd dmxvis
# checkout to a tagged version for stability, tho master is usually pretty clean
git switch v0.1.1
Before attempting to build dmxvis
, get the following packages/software for linking:
# Arch
pacman -S pkgconf
# OpenSUSE
zypper in alsa-devel systemd-devel
# Fedora
dnf install systemd-devel pkgconf alsa-lib-devel
# Arch, compiling to Windows
pacman -S mingw-w64-gcc
cargo b -r --target x86_64-pc-windows-gnu
Install the Windows SDK
found in the Visual Studio Installer options.
To compile from source, update rust and run:
rustup update
cargo b -r
The binary will be located at: target/release/dmxvis(.exe)
Pulseaudio Volume Control can be used to set the input (Microphone or playback device).
To use the Serial port (for the DMX & WS2812 LED board), your Linux user account needs permissions.
First, check which group the serial port belongs to (often dialout
or uucp
):
ls -l /dev/tty*
ls -l /dev/ttyUSB0
ls -l /dev/ttyACM0
# output
crw-rw---- 1 root uucp 166, 0 20. Apr 04:20 /dev/ttyACM0
Normally, your user is not in this group, so add your user to the dialout
or uucp
group:
sudo usermod -aG GROUP USERNAME
For changes to take effect, logout and re-login to the user or reboot the machine.
Connect an Arduino and find out which COM it is represented by, and set the app to that COM port.
Windows will prompt the user to allow the application to use the network.
dmxvis uses confy to save configuration files, which in turn uses the directories crate.
It uses these paths for configs:
// Lin: /home/[User]/.config/dmxvis
// Win: C:\Users\[User]\AppData\Roaming\dmxvis\config
// Mac: /Users/[User]/Library/Application Support/rs.?.dmxvis
NOTE: updating to a new version may overwrite existing configuration files with defaults.