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暫停或恢復律動;右上角電平按鈕也可控制。 - 視覺風格:提供四種配色(經典、極光、暖焰、單色)、條寬調整、律動幅度調整及峯值保持功能。
使用方法¶
- 在 DSH 的 Plugins 頁面啓用
dsh-rail-music。 - 打開帶有輪次導航軌道的對話頁面。
- 播放音樂或視頻。
- 點擊右上角的
⋯進入設置面板,調整配色、條寬和幅度。
注意事項¶
- 獨佔輸出:播放器使用 WASAPI 獨佔輸出時,插件可能無法採集到聲音,需切換至共享模式。
- 瀏覽器偏好:如果瀏覽器開啓了“減少動態效果”,插件將暫停渲染。
- 音頻路由:macOS 和 Linux 需預先配置好虛擬音頻設備或監聽源。