DSH Rail Music:让对话轨道随律动

DSH Web 的对话轨道负责导航,当播放背景音乐时,这些轨道通常保持静止,缺乏动态感。Rail Music 插件通过采集运行 DSH 的主机上的系统音频并驱动轨道高度,解决了这个问题。它提供了一种将听觉节奏转化为视觉律动的机制,同时保持导航的可用性。

工作原理

插件运行在 DSH Web Profile 中。它利用 Python 的音频库采集系统混音输出(包括播放器、浏览器视频或本地文件的声音),通过频段分析生成数据,发送给 DSH 客户端进行渲染。

系统要求

使用前需满足以下条件:

  • DSH 版本:0.2.0-rc.2 及以上。
  • Python 环境:3.9 及以上,需安装 soundcard 和 numpy 库。
  • 音频驱动:
    • Windows:WASAPI 共享模式 loopback。
    • Linux:PulseAudio 或 PipeWire 的 sink monitor,需 libpulse 支持。
    • macOS:CoreAudio 虚拟输入(如 BlackHole 2ch),需配置多输出路由。

安装

通过 DSH Agent 或命令行安装:

dsh plugin --profile web add github:YOU-SHOULD-KNOW-ME/dsh-rail-music

安装前请确认系统环境。Windows 用户可在 PowerShell 中检查:

python -m pip install soundcard numpy
python -c "import soundcard, numpy; print('Audio dependencies ready')"

如果 DSH 使用的 Python 与此不同,或未在 PATH 中,需在配置文件中指定路径:

~/.dsh/profiles/web/cordis.patch.yml

- id: dsh-rail-music
  config:
    pythonPath: 'C:\Python311\python.exe'

核心功能

  • 音频采集与渲染:采集系统混音,支持 Windows WASAPI、Linux PulseAudio/PipeWire、macOS CoreAudio。
  • 交互逻辑:鼠标悬停或键盘进入轨道时,恢复 DSH 原有的导航样式;离开后继续律动。
  • 控制与快捷键:支持 Alt + M 暂停或恢复律动;右上角电平按钮也可控制。
  • 视觉风格:提供四种配色(经典、极光、暖焰、单色)、条宽调整、律动幅度调整及峰值保持功能。

使用方法

  1. 在 DSH 的 Plugins 页面启用 dsh-rail-music。
  2. 打开带有轮次导航轨道的对话页面。
  3. 播放音乐或视频。
  4. 点击右上角的 ⋯ 进入设置面板,调整配色、条宽和幅度。

注意事项

  • 独占输出:播放器使用 WASAPI 独占输出时,插件可能无法采集到声音,需切换至共享模式。
  • 浏览器偏好:如果浏览器开启了“减少动态效果”,插件将暂停渲染。
  • 音频路由:macOS 和 Linux 需预先配置好虚拟音频设备或监听源。
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜