Skip to content

Releases: qwex888/miyin

觅音 v0.5.3

Choose a tag to compare

@github-actions github-actions released this 19 Oct 09:10

[0.5.3] - 2026-10-19

Added

  • 上游接口矩阵:各平台搜索声明主备多级通道,单接口失效自动降级;新增超时/重试/熔断与过期缓存兜底开关,并新增 GET /api/upstream/health 通道健康检查 (@qwex888)

  • 音源按实测表现排序:稳定交付高码率的音源优先尝试,常返回试听或谎报档位的自动靠后;新音源仍有被验证的机会,避免「最新导入优先」这类与可靠性无关的偏好 (@qwex888)

  • 下载队列「全选」右侧增加刷新按钮,可手动重新拉取当前分类的数据(搜索态下刷新搜索结果) (@qwex888)

  • 队列页新增「清理重复」:列出此前下重的记录,默认每组保留音质最高的一条,可批量清理并可选择同时删除本地文件 (@qwex888)

  • 下载记录支持按平台、音质、入队日期筛选,可与关键词、批量筛选叠加 (@qwex888)

  • 设置页新增重复处理策略:可开关入队查重、选择「每次询问 / 自动跳过 / 自动替换」,并保护已有的高音质文件;弹窗点过「不再提醒」后可在这里改回询问 (@qwex888)

  • 搜索结果与专辑曲目新增「已在库」标记,下载前就能看出这首歌是否已经下载过 (@qwex888)

  • 入队前自动比对下载记录:批量提交时把疑似重复的歌曲聚合到一个弹窗,可一键「全部替换 / 全部跳过」或逐条裁决,不再静默覆盖同名文件 (@qwex888)

  • 下载记录支持关键词检索:队列页可按歌手 / 歌名 / 专辑搜索当前分类的历史记录,多关键词以空格分隔且不限词序,命中处高亮;关键词同步收敛 tab 角标,当前分类无结果时提示其他分类的命中条数 (@qwex888)

Changed

  • QQ 搜索改用更快的 search_for_qq_cp 作为主通道(实测约 0.2s vs 3.1s),老接口退为备用,降低慢网络下的超时失败率 (@qwex888)

  • 下载队列页把检索框与筛选条移到分类 tab 上方,阅读顺序改为「先搜索、再看分类」 (@qwex888)

  • 放宽同名判定:稻香 与 稻香(Live)、稻香(Demo)等不同版本不再算重复,允许多版本共存;升级后会自动按新规则重算已有记录 (@qwex888)

  • 下载记录检索改为跨全部分类:结果中直接标出每条所属的「进行中 / 已完成 / 失败」,可在该条上直接删除、重试、换源等,也可点分类标签把结果限定到该分类继续批量操作 (@qwex888)

  • 下载改为先写入临时文件、校验通过后才落到最终路径:下载失败或中途取消不再破坏同名已有文件,也不会留下半个坏文件 (@qwex888)

Fixed

  • 网易云与酷我专辑搜索接入多通道与错误识别,QQ 专辑详情对上游报错给出真实原因,不再显示为「空专辑」 (@qwex888)

  • 网易云与酷我搜索补齐容错:网易云新增备用通道并在降级时自动补回封面;酷我补上业务态错误识别,不再把上游报错静默当成空结果 (@qwex888)

  • QQ 搜索改用快速接口后仍能取无损:新增批量后置增强补齐 media_mid 与真实音质档位,且增强失败不影响搜索结果 (@qwex888)

  • 酷狗搜索结果恢复封面:封面取自响应内 trans_param.union_cover(实测覆盖率 100%),不再显示空白图 (@qwex888)

  • 酷狗搜索不再静默返回空结果:上游已加签名校验(error_code=20006),现自动切换备用通道,并在全部通道失败时抛出携带真实错误码与描述的 502 (@qwex888)

  • 下载完成后校验实际位深,修正被虚标的音质:此前沿用音源的声称值(如声称 flac24bit、实测却是 16bit 多声道无损),现在按实测结果如实记录,不再把 16bit 标成 Hi-Res (@qwex888)

  • 修复「最高可用」却下到假无损的问题:此前只要音源声称 flac24bit 就被当成无损采纳,实测有音源声明 flac24bit 实际只有 320kbps 的 mp3。现在按「体积 ÷ 时长」实测码率挑选真正质量最好的音源,并用内容魔数识破 mp3 冒充无损 (@qwex888)

  • 试听失败的提示改为说明已试过多少个音源/音质组合;点「重试」会从断点继续,不会重头再试同一批音源 (@qwex888)

  • 修复「遇到试听片段就立刻放弃」的问题:以前只试第一个能取到链接的音源,发现是试听就直接报错,即使后面还有能给完整文件的音源也不会去试。现在会自动换音源、换音质档位继续尝试,一轮试完才如实报错 (@qwex888)


技术溯源

(无法解析上一版本 tag,略过 commit 列表)


产物

Docker(linux/amd64 + linux/arm64)

docker pull qwex333/miyin:0.5.3
docker pull ghcr.io/qwex888/miyin:0.5.3

飞牛 FPK(x86 + ARM 胖包)

  • miyin-v0.5.3.fpk — 应用中心手动安装

觅音 v0.5.2

Choose a tag to compare

@github-actions github-actions released this 20 Sep 07:13

[0.5.2] - 2026-09-20

Fixed

  • 单曲与批量入队接口校验音质枚举,非法音质直接拒绝,不再产生必然失败的下载任务 (@qwex888)

  • 歌单匹配对全括号标题、空歌手段的候选不再误加分,降低匹配错曲概率 (@qwex888)

  • 取消下载任务后,取链/写元数据等滞留流程不再把任务复活为运行或完成状态 (@qwex888)

  • 开启口令鉴权但未配置 SESSION_SECRET 时,会话密钥改为启动期随机生成,不再回退到固定默认值,防止伪造会话 (@qwex888)

  • 修复下载后封面嵌入:metadataService 漏导 readFileSync,封面 JPEG 转换结果校验抛错被吞掉,导致有 img 的曲目只写了标签却没有内嵌封面

  • 酷我 / QQ 搜索与专辑详情、以及歌单直通入队时,会把封面写入 musicInfo.img,下载后可正确嵌入专辑封面

  • 检查到应用有新版本后,设置导航红点与版本旁「有更新」提示会正确保留;仅「忽略此版本」会隐藏提醒(「稍后再说」只关弹窗)

  • 首次进入应用(已登录或开放模式)会自动请求更新检查并显示设置角标;登录成功后也会补检

Added

  • 单曲搜索结果支持多选批量下载,可全选已加载结果或逐条勾选后一次入队(超过 100 首需二次确认) (@timor-m)

技术溯源

(无法解析上一版本 tag,略过 commit 列表)


产物

Docker(linux/amd64 + linux/arm64)

docker pull qwex333/miyin:0.5.2
docker pull ghcr.io/qwex888/miyin:0.5.2

飞牛 FPK(x86 + ARM 胖包)

  • miyin-v0.5.2.fpk — 应用中心手动安装

觅音 v0.5.1

Choose a tag to compare

@github-actions github-actions released this 15 Sep 10:48

[0.5.1] - 2026-09-15

Added

  • 试听栏展开/收起按钮在播放中会显示轻微边框波纹动效,便于识别当前正在试听 (@qwex888)

  • 试听栏全局显示(切换页面保持播放),支持收起/展开、底部留白防遮挡,以及可拖动进度条;展开/收起为仅箭头样式 (@qwex888)

  • 专辑下载可勾选「按文件夹归档」并配置文件夹命名(默认 {album},写入服务端设置);歌单不自动建夹(@larryzbo)

  • 搜索页单曲/专辑支持触底自动加载更多(各平台统一每页 30 条);空页、不满一页或请求失败时停止,避免无限重试 (@Andyong8901)

  • 本地可自动下载官方 fnpack(pnpm download:fnpack / pnpm build:fpk),并同步带版本号的 .fpk 到 dist/(@timor-m, PR #24)

Fixed

  • 尝试修复 iOS 15 访问页面空白:将 Vite 构建目标设为 safari15,以关闭 Nuxt #entry importmap(需真机验证)(@qwex888)

  • 为 iOS 15.0–15.3 补齐 Object.hasOwn / findLast* polyfill,避免 Nuxt payload 解析阶段白屏(@timor-m, PR #24)

  • 试听取链中展示「取链中…」,切换曲目或关闭时取消上一请求并停止缓冲 (@qwex888)

  • 网易/QQ/酷狗歌单解析补全 musicInfo,支持同平台 id 直通入队,避免二次搜索失败导致队列为空;批量入队无可用音源时不再假成功 (@qwex888)

Changed

  • 专辑详情曲目列表改为虚拟滚动(弹性高度 + 最小 400px 兜底),超大合集滚动更顺畅

  • 音源更新提示整条可点(可一键更新则更新,否则打开说明),并将一键更新/打开说明提到提示旁始终显示;操作列仍保留 (@qwex888)

  • 接入 @vueuse/nuxt,底部导航用 useScreenSafeArea 适配多机型安全区 (@qwex888)


技术溯源

(无法解析上一版本 tag,略过 commit 列表)


产物

Docker(linux/amd64 + linux/arm64)

docker pull qwex333/miyin:0.5.1
docker pull ghcr.io/qwex888/miyin:0.5.1

飞牛 FPK(x86 + ARM 胖包)

  • miyin-v0.5.1.fpk — 应用中心手动安装

觅音 v0.5.0

Choose a tag to compare

@github-actions github-actions released this 02 Sep 09:07

[0.5.0] - 2026-09-02

Added

  • 歌单解析支持酷我(kw)链接(含 m.kuwo.cn/newh5app/playlist_detail/{id}),分页拉全曲目
  • 专辑搜索/详情:补充 mock fetch 的 service 与路由等价路径测试(含 kg/kw 分页与硬顶)
  • 设置页分为「基础设置 / 访问口令」两个 Tab;访问口令修改(须校验当前口令,可留空切回开放模式)立即生效,无需重启。优先级:应用内设置 > Docker -e / 飞牛安装向导;FPK 同步写入 miyin.env
  • 搜索页支持「单曲 / 专辑」切换:可按专辑名搜索(wy / tx / kw / kg),进入专辑详情后多选或一键整专入队下载
  • 单曲详情增加「查看专辑」跳转(携带 albumId 时直达整专曲目列表)
  • 专辑/歌单批量入队结果弹窗:失败项按原因分组汇总,支持重试失败项;查看队列时可按 batchId 筛选同批任务
  • CHANGELOG 与 Release 分工:[Unreleased] 仅用户可感知摘要;发版 Release Notes 自动附 git tag 区间 commit 溯源;新增 pnpm changelog:add 辅助写入
  • CI:PR 策略检查(禁止二进制/超大文件、业务变更须更新 CHANGELOG);PR 模板与按路径自动打 label
  • 贡献指南:PR 流程、fork 首次需 Approve workflows、分支保护配置说明(合并仍须维护者人工确认)
  • 单元测试:新增 tests/platformSearchVar.test.ts,覆盖 wy、kw、kg、tx 全部 4 个音乐平台的搜索适配器变量声明与返回结构完备性测试
  • 队列与健康检查:暴露 /api/health 实时内存指标(rssMb、heapUsedMb、heapTotalMb)与 /api/downloads/stats 队列聚合统计接口
  • 队列失败 Tab:选中任务后可「批量换音质」「批量换源」(全选也可用);H5 工具栏双列自适应
  • 音源批量导入/检测/目录与完整包导入:进度弹窗支持「立即停止」;服务端按项边界中止,已完成项保留

Changed

  • 更新说明弹窗不再附带下载链接
  • 登录页与设置页口令输入统一使用显/隐眼睛图标组件
  • 登录页访问口令输入框支持显/隐切换(右侧眼睛图标)
  • 歌单解析与匹配流程:歌单解析提取曲目基础元信息并保留原始 musicInfo,入队与下载支持快速直通通道(allowManualBypass)或匹配引擎跨平台解析,避免大歌单发起不必要的强制全量二次搜索
  • Benchmark 测试门禁:为高耗时及依赖外部网络的内存/吞吐量基准测试(tests/realPlaylistMemory.test.ts、tests/cleanPlaylistBench.test.ts、tests/benchmarkMemory.test.ts)添加 describe.skipIf(!process.env.RUN_BENCHMARKS),确保默认 CI 与本地单元测试确定性且毫秒级快速通过
  • 下载并发与队列调度:采用 p-queue 接管任务并发与动态调度,绑定 AbortController 信号传递替代旧定时器循环与全局 cancel 集合,流式下载进度广播增加节流控制(250ms / 5% 变化量)

Fixed

  • 酷狗超长歌单曲目偏少:改用 pubsongs get_other_list_file(安卓签名)拉全量,避免旧 special/song 将 total 截断(如 988→735)
  • 酷狗 gcid 分享歌单(如 m.kugou.com/songlist/gcid_…)识别失败:改为经 m 站解析 specialid 后再拉曲目,避免跟到 www 空壳页
  • 酷狗(kg)专辑详情超过单页 500 首时改为分页拉全曲目(硬顶 50 页),避免整专入队被截断;酷我(kw)专辑详情同步分页;网易/QQ 经核查为单次全量接口、请求侧无 pagesize 截断
  • 队列页:下载进度 SSE 不再每次触发 /api/downloads/stats;仅在任务状态变化时防抖刷新,避免单任务下载时每秒请求数次
  • 单元测试:playlistMatchStream 入队相关用例改用临时 DATA_DIR,避免 pnpm test 向开发库 ./data 写入 Track N 假任务污染下载队列
  • 服务启动自愈:服务启动时自愈扫描并将残留的孤儿 status = 'running' 任务重置为 queued,解决应用重启后残留假运行与并发显示不准
  • 取消竞态修复:修复下载任务取消与执行调度之间的竞态条件(P1-1),严密校验 DB 状态与 AbortController,防止已取消任务在 processTask 启动或执行中被错误复活为 running
  • 任务调度分发:优化 p-queue 任务分发机制,入队前保持 queued 状态并增加 tickWorker 互斥锁(P1-2),避免并发数设置较小时 UI 提前显示多条 running
  • 跨平台搜索适配器:修复 server/services/platformSearch.ts 中 kw (id)、kg (hash)、tx (mid) 的局部变量声明,防止由于变量未定义导致运行时抛出 ReferenceError
  • 音源沙箱异常治理:重构 sourceRuntime.ts 中的异步拒绝守卫(rejectionGuard),使用引用计数与局部桶(Bucket)监听器及时解绑与清理引用,消除未捕获 Promise 拒绝导致的 V8 GC Root 内存泄漏
  • 仓库治理:彻底移除仓库内提交的平台可执行二进制文件 packaging/fnos/bin/fnpack.exe

Changed

  • 全局 viewport 禁止双指缩放(user-scalable=no)

技术溯源

(无法解析上一版本 tag,略过 commit 列表)


产物

Docker(linux/amd64 + linux/arm64)

docker pull qwex333/miyin:0.5.0
docker pull ghcr.io/qwex888/miyin:0.5.0

飞牛 FPK(x86 + ARM 胖包)

  • miyin-v0.5.0.fpk — 应用中心手动安装

觅音 v0.4.3

Choose a tag to compare

@github-actions github-actions released this 28 Aug 08:43

[0.4.3] - 2026-08-28

Added

  • 音源页「更多」支持一键停用所有异常音源(检测失败且仍启用的项,仅停用不删除)
  • 音源检测/导入进度遮罩可滚动展示实时 [source] 日志;结束后需点确认关闭(列表中的失败摘要仍为短句,不含完整日志)
  • 顶栏增加帮助菜单:关于觅音(版本与仓库链接)、问题反馈/建议(跳转 GitHub Issues)
  • 应用更新检测:发版时 CI 生成 latest.json 并附到 GitHub Release;应用启动后检查更新,设置页显示版本号,有新版本时「设置」导航红点和更新日志弹窗
  • 音源检测增加试取链探针:导入/检测时会用固定探针曲目调用 getMusicUrl;失败时按 DNS 失败、API 停服、Key 失效、404/500、限流、IP 封禁、脚本需升级等给出针对性 last_error 提示

Changed

  • 下载/试听取链:最高可用与固定音质均改为「先按音质档位、再轮询全部音源」;同一档位全部失败后再降档(最高可用)或整体失败(固定音质),避免早停在低音质源

产物

Docker(linux/amd64 + linux/arm64)

docker pull qwex333/miyin:0.4.3
docker pull ghcr.io/qwex888/miyin:0.4.3

飞牛 FPK(x86 + ARM 胖包)

  • miyin-v0.4.3.fpk — 应用中心手动安装

觅音 v0.4.2

Choose a tag to compare

@github-actions github-actions released this 17 Aug 02:00

[0.4.2] - 2026-08-17

Added

  • 音源「更多 → 批量导入目录(JS)」:递归导入目录内全部 .js,名称取文件名;同名冲突可选择覆盖或跳过
  • 音源批处理实时进度:文本导入 / 目录导入 / 完整包 / 检测 / 清理时展示「当前进度:【n/m】音源:[名称],状态:…」;单条超时 30s,整批超时 min(5 分钟, 条数×30s)

Changed

  • 布局:窗口不滚动;主内容区(app-main)为唯一页面级滚动;首页/音源/队列等一屏内展示,列表在区域内滚动
  • 页面 Loading / 导入进度:固定在视口首屏居中(不再随超高内容居中导致要滑很久才看到)
  • 单个新增:上传仅支持 1 个 .js 文件;同名冲突自动改名为「名称 (2)」…
  • 批量脚本上传改为冲突预览(覆盖/跳过),不再自动改名
  • 首页试听迷你条:播放/暂停改为可区分状态的图标按钮,并支持关闭(停止播放并清空)

Removed

  • 单个新增弹窗中的「选择目录」入口(改由音源页「更多」批量导入目录)

Fixed

  • 导入冲突弹窗选择覆盖后,进度遮罩被弹窗挡住:Loading 提到弹窗之上,Toast 保持更高层级
  • 首页试听迷你条在桌面端被搜索结果封面遮挡(提高 .mini 层级)

产物

Docker(linux/amd64 + linux/arm64)

docker pull qwex333/miyin:0.4.2
docker pull ghcr.io/qwex888/miyin:0.4.2

飞牛 FPK(x86 + ARM 胖包)

  • miyin-v0.4.2.fpk — 应用中心手动安装

觅音 v0.4.1

Choose a tag to compare

@github-actions github-actions released this 12 Aug 03:31

[0.4.1] - 2026-08-12

Fixed

  • 生产构建:平台映射改用 Nuxt #shared 别名,修复 Nitro 无法解析 shared/platforms.ts 导致 pnpm build 失败

产物

Docker(linux/amd64 + linux/arm64)

docker pull qwex333/miyin:0.4.1
docker pull ghcr.io/qwex888/miyin:0.4.1

飞牛 FPK(x86 + ARM 胖包)

  • miyin-v0.4.1.fpk — 应用中心手动安装

觅音 v0.4.0

Choose a tag to compare

@github-actions github-actions released this 11 Aug 10:29

[0.4.0] - 2026-08-11

Fixed

  • 首页飞牛授权弹窗:点「去授权」进入设置页后遮罩仍盖住设置;现会关闭弹窗,且仅在首页路由显示
  • 歌单列表:KeepAlive 切到队列再返回时虚拟列表空白,需滚动才出现;切回后自动重测可见区
  • 歌单入队不再写死「最高可用」:跟随页内音质选择(默认读设置中的默认音质)
  • 飞牛/Docker:鉴权与目录改为优先读取进程环境变量 AUTH_TOKEN / DOWNLOAD_DIR(不再只依赖 Nuxt 的 NUXT_* runtimeConfig),安装向导留空口令与自定义下载路径可真正生效
  • 安装向导:填写了绝对下载路径但未切换「自定义」时,自动按 custom 写入;cmd/main 同步导出 NUXT_* 别名
  • 退出登录时销毁 KeepAlive 页面实例、断开下载 SSE、释放飞牛 SDK,避免设置页授权 loading 卡住后重登仍残留
  • 飞牛开放 API / SDK 失败改为 Toast 提示;授权相关 SDK 调用增加超时,避免遮罩一直转圈

Added

  • 歌词:QQ / 酷我 / 酷狗尽量支持双语;QQ 优先旧 Base64 接口,失败再走 PlayLyricInfo + QRC 解密兜底;酷狗支持 KRC 翻译轨;咪咕在有 lrc/trc URL 时拉取
  • 依赖:qrc-decoder(MIT,纯 JS)用于 QQ QRC 解密,适配飞牛/Node 无需 native
  • 设置:任务启动间隔、下载间隔(秒),用于错开取链 / 上一首结束后冷静再下下一首,减轻音源批量风控
  • 歌单页:音质下拉(默认跟随设置,可临时改;不改全局默认)
  • 顶栏「刷新」:各页可重新拉取进入时数据(设置/歌词选项/音源列表/队列等),KeepAlive 会话内的搜索结果、歌单预览等操作态仍保留
  • 音源:统一新建/编辑弹窗,支持 URL、拖拽/选文件/选目录上传,以及直接编辑本地 JS(含 Key,不落库)
  • 音源:导出/导入完整包 zip(manifest.json + 脚本);导入冲突时可选择覆盖或跳过
  • 全局 Toast 提示(成功 / 失败 / 警告 / 信息):顶部居中,适配亮暗色与移动端;队列多任务失败不刷 Toast,仅行内展示
  • 页面级 Loading 遮罩(半透明挡交互):搜索、歌单解析/入队、队列/设置/音源加载与批量操作
  • 歌单「匹配确认」改为弹窗(桌面居中 / 移动端底部抽屉),避免沉在页面底部不易发现
  • 歌单「入队结果」改为确认式弹窗,可一键跳转下载队列
  • 下载队列失败任务支持「换音质」:仅本任务重下,不改全局默认、不记忆选择
  • 飞牛 FPK:接入应用共享目录授权(@trimjs/web-app + trim.file.sharedAccess);设置页支持「选择并授权目录」「授权当前路径」,首页对未授权自定义目录显示轻提示
  • 飞牛:独立浏览器授权回调页 /fnos-auth-callback;后端 GET /api/fnos/dir-auth、POST /api/fnos/download-dir(写入 miyin.env 并提示重启)

Changed

  • 设置页歌词说明改为各平台尽量合并双语(不限网易云);内嵌仍依赖 ffmpeg
  • 搜索页音质下拉默认值改为读取设置中的默认音质(仍可临时改)
  • QQ 搜索结果写入 songid,便于歌词新接口取数字 ID
  • 首页飞牛目录未授权提示由顶栏条改为遮罩弹窗(桌面居中 / 移动端底部抽屉),突出「去授权 / 稍后提醒」
  • NuxtPage 绑定 pageSession:会话内仍 keepalive,退出登录后强制重建页面
  • 音源列表:移动端行内操作改为「···」展开面板;桌面端仍常显启用/编辑/删除
  • 音源列表 URL 固定 80px 宽、最多两行省略显示
  • 音源页工具栏收敛为「单个新增 / 删除选中 / 更多」;文本导入、完整包导入导出、检测全部、清理失效收入更多面板;行内保留启用、编辑、删除
  • 飞牛 os_min_version 提升至 1.2.0401,manifest 声明 micro_app=true;安装/配置向导说明改为引导应用内一键授权(系统应用设置仍为兜底)
  • 飞牛桌面 UI 图标 app/ui/images/icon_{64,128,256}.png 改为不透明白底,与 ICON_256.PNG 一致;render-brand-assets.sh 同步默认导出白底
  • .gitignore:运行时目录改为仅忽略仓库根 /downloads/、/data/,并忽略本地 .cursor/rules/

Fixed

  • 音源检测:按 /api/sources/check 返回的 status/error 提示(不可用时错误 Toast,不再一律「检测完成」成功)
  • 音源「更多」下拉面板背景改为实色 var(--surface)(原先误用 HSL 分量 --card,暗色下透明叠字)
  • SSR:@trimjs/web-app 改为客户端动态导入,避免服务端求值读 window 导致路由导航失败(window is not defined)
  • 下载目录不可写时入队直接返回明确错误「无下载目录写入权限」(含 Docker/飞牛挂载场景的实际写探针);写入失败任务不再静默/盲目重试
  • 飞牛 FPK:server/api/downloads/** 曾被 downloads/ 忽略规则误伤而未打进包,导致 /api/downloads 与 SSE /events 404、队列始终为空;现已恢复路由纳入版本库

产物

Docker(linux/amd64 + linux/arm64)

docker pull qwex333/miyin:0.4.0
docker pull ghcr.io/qwex888/miyin:0.4.0

飞牛 FPK(x86 + ARM 胖包)

  • miyin-v0.4.0.fpk — 应用中心手动安装

觅音 v0.3.0

Choose a tag to compare

@github-actions github-actions released this 08 Aug 10:07

[0.3.0] - 2026-08-08

Added

  • 音源:统一新建/编辑弹窗,支持 URL、拖拽/选文件/选目录上传,以及直接编辑本地 JS(含 Key,不落库)
  • 音源:导出/导入完整包 zip(manifest.json + 脚本);导入冲突时可选择覆盖或跳过
  • 全局 Toast 提示(成功 / 失败 / 警告 / 信息):顶部居中,适配亮暗色与移动端;队列多任务失败不刷 Toast,仅行内展示
  • 页面级 Loading 遮罩(半透明挡交互):搜索、歌单解析/入队、队列/设置/音源加载与批量操作
  • 歌单「匹配确认」改为弹窗(桌面居中 / 移动端底部抽屉),避免沉在页面底部不易发现
  • 歌单「入队结果」改为确认式弹窗,可一键跳转下载队列
  • 下载队列失败任务支持「换音质」:仅本任务重下,不改全局默认、不记忆选择
  • 飞牛 FPK:接入应用共享目录授权(@trimjs/web-app + trim.file.sharedAccess);设置页支持「选择并授权目录」「授权当前路径」,首页对未授权自定义目录显示轻提示
  • 飞牛:独立浏览器授权回调页 /fnos-auth-callback;后端 GET /api/fnos/dir-auth、POST /api/fnos/download-dir(写入 miyin.env 并提示重启)

Changed

  • 音源列表:移动端行内操作改为「···」展开面板;桌面端仍常显启用/编辑/删除
  • 音源列表 URL 固定 80px 宽、最多两行省略显示
  • 音源页工具栏收敛为「单个新增 / 删除选中 / 更多」;文本导入、完整包导入导出、检测全部、清理失效收入更多面板;行内保留启用、编辑、删除
  • 飞牛 os_min_version 提升至 1.2.0401,manifest 声明 micro_app=true;安装/配置向导说明改为引导应用内一键授权(系统应用设置仍为兜底)
  • 飞牛桌面 UI 图标 app/ui/images/icon_{64,128,256}.png 改为不透明白底,与 ICON_256.PNG 一致;render-brand-assets.sh 同步默认导出白底
  • .gitignore:运行时目录改为仅忽略仓库根 /downloads/、/data/,并忽略本地 .cursor/rules/

Fixed

  • 音源检测:按 /api/sources/check 返回的 status/error 提示(不可用时错误 Toast,不再一律「检测完成」成功)
  • 音源「更多」下拉面板背景改为实色 var(--surface)(原先误用 HSL 分量 --card,暗色下透明叠字)
  • SSR:@trimjs/web-app 改为客户端动态导入,避免服务端求值读 window 导致路由导航失败(window is not defined)
  • 下载目录不可写时入队直接返回明确错误「无下载目录写入权限」(含 Docker/飞牛挂载场景的实际写探针);写入失败任务不再静默/盲目重试
  • 飞牛 FPK:server/api/downloads/** 曾被 downloads/ 忽略规则误伤而未打进包,导致 /api/downloads 与 SSE /events 404、队列始终为空;现已恢复路由纳入版本库

产物

Docker(linux/amd64 + linux/arm64)

docker pull qwex333/miyin:0.3.0
docker pull ghcr.io/qwex888/miyin:0.3.0

飞牛 FPK(x86 + ARM 胖包)

  • miyin-v0.3.0.fpk — 应用中心手动安装

觅音 v0.2.1

Choose a tag to compare

@qwex888 qwex888 released this 07 Aug 07:04

[0.2.1] - 2026-08-07

Fixed

  • CI:适配 pnpm 11,将 onlyBuiltDependencies 迁移为 pnpm-workspace.yaml 的 allowBuilds,修复 ERR_PNPM_IGNORED_BUILDS
  • FPK 打包:server 目录改用独立 npm install,避免被仓库根 pnpm-workspace 吸走导致找不到 better-sqlite3/prebuilds

Changed

  • main 分支规则:合入 PR 必须通过 test-and-build;发版工作流先跑同一套检测再推镜像 / 打 FPK
  • 新增 pnpm release / scripts/release.sh 一键打 tag 触发 Docker + FPK Release

产物

Docker(linux/amd64 + linux/arm64)

docker pull qwex333/miyin:0.2.1
docker pull ghcr.io/qwex888/miyin:0.2.1

飞牛 FPK(x86 + ARM 胖包)

  • miyin-v0.2.1.fpk — 应用中心手动安装