#dmx #visualizer #music #led-strip #frame-rate #openrgb

app dmxvis

高帧率LSD音频可视化器 [DMX, WS281x, OpenRGB]

2个版本

0.1.1 2024年7月26日
0.1.0 2023年11月1日

#126 in 音频

Download history 144/week @ 2024-07-26 6/week @ 2024-08-02

每月150次下载

MITGPL-2.0 许可证

550KB
1K SLoC

DMX & 可寻址RGB灯带 - 音频可视化器 - 兼容OpenRGB!

简单的音乐可视化器。颜色可以发送到WS2812 LED灯带和DMX灯具。

适用于Windows和Linux,MacOS目前未测试。

⚠️ 视觉癫痫警告 ⚠️

它是如何工作的?

  • 该应用程序从默认播放设备捕获音频
  • 将立体声转换为单声道并应用增益
  • 生成fft
  • 从fft频带生成颜色(目前为固定的交叉频率)
  • 对颜色频带应用各种过滤器
  • 颜色可以发送
    • 到串行端口:Arduino将接收到的颜色转换为DMX和/或WS2812灯带
    • 通过网络:树莓派可以接收颜色数据包并在WS2812灯带上渲染

哪种音乐效果最好?

任何音乐都适用,但可视化器在动态、未压缩的音乐(如将所有乐器的音量提升到同一水平)上效果最佳。快节奏的音乐特别有趣。小心癫痫发作!

项目结构

  • pio/kicad/
    • 基于ATMega32u4的USB到DMX&WS281X板的固件和文档
  • assets/
    • 图标、GIF和应用程序和PCB的图像
  • docs/
    • 设计文档、任务和草稿
  • rpi/
    • 树莓派的Python脚本(需要重写)
    • 从桌面应用程序接收UDP,可以向WS2812灯带发送颜色,目前不支持DMX
  • src/ Cargo.toml Cargo.lock build.rs
    • 桌面应用程序的Rust项目
    • 即将进行修改

版本

该程序编译为独立可执行文件,适用于Windows和Linux(支持可能不同)。在版本中查找。

从源代码构建

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

先决条件

在尝试构建dmxvis之前,获取以下软件包/软件进行链接

# 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

Windows构建说明

安装Visual Studio安装选项中的Windows SDK

构建

要从源代码编译,更新rust并运行

rustup update
cargo b -r

二进制文件将位于: target/release/dmxvis(.exe)

配置

Linux

可以使用 Pulseaudio 音量控制来设置输入(麦克风或播放设备)。

串行

要使用串行端口(用于 DMX & WS2812 LED 板),您的 Linux 用户帐户需要权限。

首先,检查串行端口属于哪个组(通常是 dialoutuucp

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

通常,您的用户不在这个组中,因此请将您的用户添加到 dialoutuucp

sudo usermod -aG GROUP USERNAME

要使更改生效,请注销并重新登录用户或重启计算机。

Windows

连接 Arduino 并找出它对应的 COM 端口,并将应用程序设置为该 COM 端口。

Windows 将提示用户允许应用程序使用网络。

常见配置

dmxvis 使用 confy 保存配置文件,而 confy 又使用 directories crate。

它使用以下路径进行配置

// Lin: /home/[User]/.config/dmxvis
// Win: C:\Users\[User]\AppData\Roaming\dmxvis\config
// Mac: /Users/[User]/Library/Application Support/rs.?.dmxvis

注意:更新到新版本可能会用默认值覆盖现有配置文件。

依赖项

~19–58MB
~1M SLoC