dsh-music-player 0.7.2 → 0.7.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -10,35 +10,31 @@ DeepSeek Harness 音乐/小说播放插件。
10
10
 
11
11
  ## 特性
12
12
 
13
- - 本地音频流式播放(HTTP Range),刷新后断点续播
13
+ - 本地音频流式播放,刷新后断点续播
14
14
  - 顺序播放、单曲循环、乱序播放三种模式
15
- - 实时频谱可视化,两种样式可在「系统配置」切换(默认柱状图):**柱状图**(12 段真实 FFT 对数频段)与**波形图**(示波器式连续曲线,按低/中/高频分成**三条**层次线,各自反映一段频率的起伏)。二者都只由 `captureStream()`+`AnalyserNode` **只读旁路**实时采样、t=0 即响应——它不重定向媒体元素输出,因此绝不会让播放静音;失败(如该环境报 Chromium 的 `getTopURL` 取不到音轨)则**直接不显示**,无离线回退。柱状图柱高把各频段的 bin 归到对数频段取峰值、按分析器 dB 量程归一化(标准做法),柱高由**绝对响度**驱动(安静时柱自然低),并用一条**固定、与响度无关的频率加权**抹平音乐天然的 1/f 低频倾斜——低频几根不再常年钉在高位,同时安静片段也保持低柱)
16
- - **实时歌词/字幕**:本地音频自动匹配同名 `.lrc` 逐行显示;**本地没有同名 `.lrc` 时自动在线兜底**(QQ 音乐官方歌词 → 酷狗 KRC 逐字 → LRCLIB 免费同步歌词,结果按曲目缓存避免重复请求);在线 QQ 歌曲自动取官方歌词(外语歌带逐句翻译「原文 / 翻译」);AI 讲书时显示当前朗读句子(逐句滚动)。歌词/字幕显示在播放条频谱之后、时长之前,仅在闲置(控件组折叠)时展示,鼠标进入操作时自动收起;**AI 讲书还有一条「已读字符/全书字符」的全书进度细线**(按已读字数实时计算,不依赖合成时长,切块不回退,操作时再显示「N%」)
17
- - 播放时申请屏幕唤醒锁,防止听歌时熄屏/休眠(支持 Wake Lock 的浏览器,如 Chrome/Edge)
15
+ - 实时频谱可视化,两种样式可在「系统配置」切换(默认柱状图):**柱状图**与**波形图**(示波器式连续曲线,按低/中/高频分成三条层次线)
16
+ - **实时歌词/字幕**:本地歌曲自动显示同步歌词(无本地 `.lrc` 时自动在线匹配);在线 QQ 歌曲显示官方歌词(外语歌带逐句翻译);AI 讲书时显示当前朗读句子。**单击播放条歌词**可打开完整歌词/字幕面板(标识当前进度、可拖动/拉伸、位置独立记忆),面板默认开启**透明模式**——歌词像直接悬浮在页面上,可在「系统配置」关闭
17
+ - 播放时防止电脑熄屏/休眠(需浏览器支持,如 Chrome/Edge)
18
18
  - 播放列表面板可自由拖动,右下角可拖拽调整大小,位置与尺寸跨刷新记忆
19
- - AI 讲书:本地 `.txt` / `.epub` 小说经 MiMo TTS 合成朗读,自动识别**书名/前言/章节/尾声**结构,播放条带**章节目录**跳转(打开即定位到当前正在播放的章节)、章节切歌,可选 4 种中文 AI 声音(默认白桦)
19
+ - AI 讲书:本地 `.txt` / `.epub` 小说 AI 语音朗读,自动识别**书名/前言/章节/尾声**结构,播放条带**章节目录**跳转(打开即定位到当前正在播放的章节)、章节切换,可选 4 种中文 AI 声音(默认白桦)
20
20
  - `music_play` 模型工具:agent 可按关键词播放本地音乐,也可按小说名启动 AI 讲书
21
21
  - 支持的格式:`mp3 / m4a / m4b / aac / flac / wav / ogg / opus / webm / aiff`(自动递归扫描子目录,上限 500 首)
22
- - **真实音质识别**:本地歌曲扫描时自动解析文件头(FLAC/WAV/AIFF 无损、MP3/AAC/OGG 码率、采样率/位深/声道),播放条显示「格式 · 音质档」(如 `FLAC · 无损` / `MP3 · 高音质` / `MP3 · 标准`),与在线 QQ 音乐的「无损/高音质/标准」三档一致
22
+ - **真实音质识别**:扫描时自动识别每首歌的音质档位,播放条显示「格式 · 音质档」(如 `FLAC · 无损` / `MP3 · 高音质` / `MP3 · 标准`),与在线音乐的音质标签一致
23
23
  - **自建歌单**:可新建多个歌单,从本地文件(支持多选、可跨目录)添加歌曲;播放条爱心按钮一键收藏到默认歌单「我最喜欢」;歌单作为播放来源时,顺序/乱序循环只在该歌单内进行
24
24
  - **在线 QQ 音乐**:面板内置「QQ音乐」页签——微信/QQ 扫码登录(解锁 VIP/高音质)、我的歌单/推荐歌单/分类歌单/排行榜/新歌/搜索浏览、卡片式歌单展示、一键收藏到「我喜欢」
25
- - **在线酷狗音乐**:面板内置「酷狗音乐」页签——酷狗 App 扫码登录(解锁高音质)、推荐/分类歌单/排行榜(TOP500 等)/统一搜索/我的歌单,KRC 逐字歌词内嵌翻译;详见下文「在线酷狗音乐」
25
+ - **在线酷狗音乐**:面板内置「酷狗音乐」页签——酷狗 App 扫码登录(解锁高音质)、推荐/分类歌单/排行榜(TOP500 等)/统一搜索/我的歌单,逐字歌词内嵌翻译;详见下文「在线酷狗音乐」
26
26
 
27
27
  ## 截图
28
28
 
29
- ![播放本地音乐](assets/screenshot-bar.png)
30
-
31
- ![播放QQ音乐](assets/screenshot-qq.png)
32
-
33
- ![播放酷狗音乐](assets/screenshot-kg.png)
34
-
35
- ![播放AI讲书](assets/screenshot-spectrum.png)
36
-
37
- ![播放面板1](assets/screenshot-panel-qq.png)
38
-
39
- ![播放面板2](assets/screenshot-panel-kg.png)
40
-
41
- ![播放面板3](assets/screenshot-panel.png)
29
+ | 播放本地音乐 | 播放QQ音乐 |
30
+ |:---:|:---:|
31
+ | ![播放本地音乐](assets/screenshot-bar.png) | ![播放QQ音乐](assets/screenshot-qq.png) |
32
+ | 播放酷狗音乐 | AI讲书 |
33
+ |:---:|:---:|
34
+ | ![播放酷狗音乐](assets/screenshot-kg.png) | ![播放AI讲书](assets/screenshot-spectrum.png) |
35
+ | QQ音乐面板 | 酷狗音乐面板 |
36
+ |:---:|:---:|
37
+ | ![播放面板1](assets/screenshot-panel-qq.png) | ![播放面板2](assets/screenshot-panel-kg.png) |
42
38
 
43
39
  ## 安装
44
40
 
@@ -58,25 +54,12 @@ dsh plugin --profile <profile> add dsh-music-player
58
54
  dsh plugin --profile <profile> add github:kendu76/dsh-music-player
59
55
  ```
60
56
 
61
- > 项目是手写的纯 JS(`lib/` 直接是发布产物),**没有**需要从源码构建的步骤,因此从 GitHub/npm 直装即可使用,无需像 TypeScript 包那样为构建脚本授权。
62
-
63
57
  安装后重启 DSH,打开 Web GUI:
64
58
  - 聊天输入区上方会出现「DSH音乐播放器」播放条
65
59
  - 点击右侧「列表」按钮打开播放面板
66
60
  - 在面板顶部点击「选择音乐目录」并选定音乐目录(默认 `~/Music`),自动递归扫描
67
61
  - 之后可直接在对话框里让 agent 播放,例如「播放周杰伦的歌」
68
62
 
69
- ### 从本地目录 / tarball 安装
70
-
71
- ```sh
72
- # 本地目录
73
- dsh plugin --profile <profile> add /path/to/dsh-music-player
74
-
75
- # 或先打包再安装
76
- pnpm pack
77
- dsh plugin --profile <profile> add ./dsh-music-player-0.1.0.tgz
78
- ```
79
-
80
63
  ## 配置
81
64
 
82
65
  插件为「Host 端 + Web 端」双面结构: