mirror of
https://github.com/atdunbg/Nekosonic-Music.git
synced 2026-08-06 03:44:18 +08:00
1fddbeab772284cd18f20bd9663b2ae0bb22c532
音源系统: - 新增可配置多音源(波点/酷狗/酷我),支持启用/禁用/排序/自定义源 - 酷我 kwDES 加密 + mobi.s 接口绕过 VIP 限制 - VIP/版权歌曲跨源 fallback,版本一致性匹配(原版/DJ/Live/混音) - 多源聚合搜索,歌名+歌手组合去重 歌曲标签: - 付费/音质/版本/音源标签,网易云 fee 字段精确判断 - privilege 数组合并(歌手/歌单/专辑/每日推荐/收藏页) 搜索建议: - 120ms 防抖 + compositionend 支持,中文输入实时建议 - Teleport + fixed 定位避免父容器裁剪 播放器: - 网络流 seek 支持(SharedBuffer 下载完成后 byte_len 可用) - 切歌停止旧播放再加载新歌,进度条起步归零 - 切歌加载状态可视化,按钮禁用反馈 - tick generation 防竞态,旧 tick 不覆盖新歌位置 - 系统媒体控制(跨平台,Windows 增加 hwnd 就绪检查避免 panic) 其他: - 设置迁移 v7(恢复酷我音源) - useUpdater 模块级共享状态
🎵 播放
- 多音质选择(标准 / 较高 / HQ / SQ / Hi-Res)
- 私人漫游 FM(个性化推荐)
- 系统媒体控制集成(MPRIS / SMTC / Now Playing)
- 音频输出设备选择
🔍 发现
- 关键词搜索(歌曲 / 歌手 / 专辑)+ 搜索建议 + 热门搜索
- 歌单浏览(推荐 / 排行榜 / 用户 / 收藏)
- 歌手详情(热门歌曲 / 专辑 / 简介 + 关注)
- 专辑详情
- 每日推荐歌曲
🎤 歌词与评论
- 实时滚动歌词(ease-out 缓动 / 点击跳转 / 渐变透明度)
- 歌词翻译
- 全屏漫游模式(封面主色提取 + 歌词/评论双标签)
- 歌曲评论(无限滚动 + 点赞)
❤️ 收藏与下载
- 一键喜欢 / 取消喜欢(同步到网易云账号)
- 歌曲下载
- 音乐云盘(上传 / 删除 / 详情 / 存储空间 / 上传进度)
- 本地音乐(多文件夹扫描 / 封面补全)
- 下载音乐(独立管理 / 删除)
🎨 个性化
- 多主题色(天蓝 / 翠绿 / 玫红 / 紫罗兰 / 橙色 / 青色 / 粉色)
- 自定义快捷键(应用内 + 系统全局)
- 关闭行为设置
- 自动更新
安装
前往 Releases 下载对应平台安装包。
配置开发环境
npm install
npm run tauri dev # 开发
npm run tauri build # 构建
环境要求:Node.js ≥ 18 · Rust ≥ 1.70 · Tauri CLI 2
技术栈
| 层级 | 技术 |
|---|---|
| 桌面框架 | Tauri 2 |
| 前端 | Vue 3 + TypeScript + Pinia |
| 样式 | Tailwind CSS v4 + CSS 变量主题 |
| 音频解码 | symphonia + ringbuf |
| 媒体控制 | souvlaki |
| 网易云 API | ncm-api-rs |
| 构建 | Vite 6 |
Todo
- 评论查看
- 歌曲下载
- 本地音乐
- 歌手详情页
- 专辑详情页
- 自定义全局快捷键
- 自动更新
- 歌词翻译
- 更多主题
- 音乐云盘
- MV 播放
- 桌面歌词
欢迎提 Issue 和 Pull request。
开源许可
本项目仅供个人学习研究使用,禁止用于商业及非法用途。基于 MIT License 开源。
Languages
Vue
51.9%
Rust
29%
TypeScript
18.2%
CSS
0.8%