ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

Mineradio v1.1.0 纯净安装版发布解析:默认视觉存档、3D 歌单架开关与后台性能策略

Mineradio v1.1.0 纯净安装版发布解析:默认视觉存档、3D 歌单架开关与后台性能策略 Mineradio v1.1.0 纯净安装版发布解析默认视觉存档、3D 歌单架开关与后台性能策略【免费下载链接】Mineradio-paused一款以电影镜头、粒子视觉和歌词舞台为核心的沉浸式音乐播放器。项目地址: https://gitcode.com/gh_mirrors/mi/Mineradio-paused本文基于 docs/RELEASE_NOTES_v1.1.0.md 编写并以当前开源仓库的源码、配置与测试为佐证。v1.1.0 是 Mineradio 一次重要的纯净安装发布它不再基于旧打包产物构建而是从可信源码重新出包同时把「默认测试」视觉用户存档固化为新用户首次启动的默认体验并为 3D 歌单架、后台策略与画质档位带来一批新开关和修复。读完本文你将理解这次发布的版本安全基线、默认视觉参数的底层来源、3D 歌单架交互修复的原理以及安装校验的完整流程。一、发布背景为什么是纯净安装版Mineradio v1.1.0 的定位不是一次常规迭代而是一次发布链路重建。根据 RELEASE_NOTES_v1.1.0.md 的说明本次安装包从当前可信源码重新构建旧dist、旧安装包、旧备份包和旧 packaged build 全部不作为本次发布来源。这意味着不存在补丁叠加式升级所有文件都来自同一份可审计源码不提供从v1.0.10到v1.1.0的软件内本地更新也不提供快速补丁本次 Release不上传latest.yml不会成为旧版本软件内更新通道的 latest避免旧客户端被引导到不完整通道。从仓库的 CHANGELOG.md 可以看到这一决策与后续的安装器安全修复是一脉相承的v1.1.1 进一步把安装器目标路径强制收敛到独立Mineradio文件夹、阻止非空非自有目录覆盖、并让卸载器只删除已知顶层文件见 CHANGELOG.md 中v1.1.1条目。因此 v1.1.0 实际上是 Mineradio 安装/更新安全基线重建的起点。版本安全说明原文档要点v1.0.10及更早旧安装包不再建议继续安装或传播请先隔离旧.exe安装包本次不提供软件内本地更新与快速补丁需手动下载完整安装包下载文件为Mineradio-1.1.0-Setup.exe与校验文件Mineradio-1.1.0-SHA256SUMS.txt安装包暂未进行代码签名Windows 可能显示安全提示。二、默认视觉存档「默认测试」首启体验从哪来v1.1.0 最核心的产品变化是把默认测试.json设为首次启动默认用户存档同时让软件内默认视觉参数与这份快照完全一致。新用户第一次启动时用户存档列表会自动预置「默认测试」无需手动导入。仓库中的实物证据仓库根目录下保留着这份快照的 JSON 形态public/default-user-fx-archive.json。它声明了type: mineradio-user-fx-archive、schema: 1名为「默认测试」并携带完整的snapshot对象。快照覆盖了视觉预设、歌词布局、粒子参数、3D 歌单架、桌面歌词、壁纸模式、声波地面Sonic Ground、性能与内存策略等 200 余项设置例如{ type: mineradio-user-fx-archive, schema: 1, name: 默认测试, snapshot: { visualPresetSchema: skull-preset-v2, preset: 0, cinemaShake: 0.5, coverResolution: 1.55, lyricGlowStrength: 0.28, shelf: side, shelfShowPodcasts: false, shelfMergeCollections: true, shelfAngleY: -11, performanceBackground: release, performanceQuality: eco, liveBackgroundKeep: false } }注意release notes 记载 v1.1.0 发布时的歌单架侧向角度为-15而当前仓库快照中该值为-11后续版本已随交互调优演进。阅读历史版本时应以对应版本说明为准。打包进运行时的机制这份快照不只是静态文件它还被直接打包进前端运行时。public/js/modules/00-state/05-packaged-fx-archive.js 中定义了PACKAGED_DEFAULT_USER_FX_ARCHIVE_NAME 默认测试并通过var PACKAGED_DEFAULT_FX_SNAPSHOT Object.freeze(Object.assign({ visualPresetSchema: VISUAL_PRESET_SCHEMA }, fxDefaults));把运行时默认值fxDefaults直接作为首启快照。文件注释明确说明这样新加的设置项不会在两条默认路径之间静默漂移。也就是说「默认测试」存档与fxDefaults共用同一份数据源任何后续新增的视觉参数都会同时进入默认存档从机制上保证了首启体验与软件内默认参数的一致性。同步脚本防止存档与运行时脱节仓库还提供了专门的同步工具 scripts/sync-current-fx-default-archive.js它会读取 public/js/modules/00-state/04-fx-defaults.js 中的fxDefaults对象对比本地运行时的current-fx-autosave.json缺失或不一致的键会直接报错Runtime defaults are not synchronized with the captured settings校验通过后把快照重新写成public/default-user-fx-archive.json。脚本默认以--dry-run模式运行并打印比对结果加上--write才真正回写且可用--source path指定运行时存档来源。这一脚本的存在印证了「默认测试」并不是一次性写死的数据而是一套可维护、可重新生成的默认体验基线。三、v1.1.0 默认视觉参数逐项解析release notes 给出了 v1.1.0 的默认视觉参数清单这些参数都能在当前仓库的 04-fx-defaults.js 与 default-user-fx-archive.json 中找到对应实现参数v1.1.0 默认值对应字段源码位置视觉预设emilypreset: 0emily 专辑封面00-preset-archive-data.js封面粒子分辨率1.55coverResolution: 1.5504-fx-defaults.js电影镜头强度0.5cinemaShake: 0.504-fx-defaults.js歌词发光0.28lyricGlowStrength: 0.2804-fx-defaults.js高亮色#fac900lyricHighlightColor归一化兜底值04-visual-settings-persistence.js发光色#008afflyricGlowColor归一化兜底值04-visual-settings-persistence.jsUI / Home / 视觉图标白色uiAccentColor/homeAccentColor/visualIconColor等均为#ffffff04-fx-defaults.js3D 歌单架静态常驻侧栏shelf: side04-fx-defaults.js侧向角度-15v1.1.0shelfAngleY04-fx-defaults.js播客歌单默认关闭shelfShowPodcasts: false04-fx-defaults.js参数背后的实现细节封面粒子分辨率不是直接决定粒子数量的原始数值而是被换算成粒子网格coverParticleGridForResolution()把1.55映射为Math.round(118 * 1.55)再取奇数网格约 183×183并对应选择 512 纹理见 04-visual-settings-persistence.js。normalizeCoverResolution会把用户输入钳制在0.75 ~ 1.55区间。emily 预设在 00-preset-archive-data.js 的presetMeta中排在第一位描述为封面粒子 · 快速入场是项目默认的播放态视觉。README 中也确认播放后切换到 Emily / 默认播放态视觉歌词舞台与粒子舞台同步工作。高亮色与发光色当前fxDefaults中lyricHighlightColor为#fff0b8、lyricGlowColor为#9db8cf但持久化层在归一化时仍以#fac900/#008aff作为兜底默认见 04-visual-settings-persistence.js与 v1.1.0 release notes 记载的默认色一致说明这两个颜色在版本演进中作为色彩基线被保留了下来。四、3D 歌单架新开关与交互修复新增两个内容开关v1.1.0 为 3D 歌单架新增了「显示播客歌单」和「合并收藏歌单」两个开关对应字段shelfShowPodcasts与shelfMergeCollections。从视觉控制台代码 09-console-workspace.js 可以看到它们在界面中的真实条目fxConsoleItem(t-shelfShowPodcasts, 显示播客歌单, 3D 播客), fxConsoleItem(t-shelfMergeCollections, 合并收藏歌单, 我的歌单 收藏 连续滚动)shelfShowPodcasts: false播客歌单默认关闭避免播客内容挤占歌单架主视觉shelfMergeCollections: true「我的歌单」与「收藏歌单」默认合并成一条连续滚动列表减少重复的架层切换。交互修复镜头绑定、触发区与遮挡v1.1.0 修复了一组与 3D 歌单架详情页相关的交互问题CHANGELOG 给出了更完整的描述见 CHANGELOG.md 中v1.1.0条目动态/静态镜头绑定分流静态详情页跟随封面粒子世界轴动态详情页跟随镜头不再互相混淆常驻触发区优化常驻歌单架未命中时不长期挡歌词只有命中卡片时才浮起到前景详情页完整性详情页打开后保持更完整的页面显示与中心高亮行修复被歌词或卡片遮挡、滚轮高亮不同步的问题。这些修复对应的参数在 04-fx-defaults.js 中均有迹可循shelfCameraMode: dynamic控制镜头模式shelfPresence: auto控制常驻呈现shelfDetailAngleY: -13、shelfDetailScale: 1.35等一组shelfDetail*参数则控制详情页的独立变换说明详情页在实现上是拥有自己一套坐标变换参数的独立场景层。歌词可读性修复详情页选歌时歌词不再突然跳亮详情页打开时歌词保持可读但降低发光层并保持在详情页下层避免遮挡中心高亮行。这与默认快照中的lyricGlow/lyricPauseHold等歌词行为参数联动——发光强度lyricGlowStrength: 0.28本身就为详情页场景预留了视觉层级空间。五、高级设置后台策略与画质档位v1.1.0 在高级设置中新增了后台策略和画质档位两个性能控制维度直播后台保持开启后不再进入低占用暂停。画质档位performanceQuality取值与归一化逻辑位于 04-visual-settings-persistence.jsfunction normalizePerformanceQuality(v) { var value String(v || ); return /^(eco|balanced|high|ultra)$/.test(value) ? value : fxDefaults.performanceQuality; }即四档eco低配/balanced中/high高/ultra超高默认eco。渲染运行时 08-desktop-render-power.js 通过performanceQualityRank()把档位映射为 0~3 的秩用于分级降载eco对应秩 0并据此切换render-background-eco等渲染 class。后台渲染策略performanceBackground归一化逻辑支持三种模式04-visual-settings-persistence.jsfunction normalizePerformanceBackgroundMode(v, liveKeepFallback) { var value String(v || ); if (value keep || liveKeepFallback true) return keep; if (value release) return release; return auto; }release后台释放渲染资源默认值对应控制台条目自动优化之外的高效释放keep后台保持渲染——liveBackgroundKeep: true时强制走该分支即直播后台保持最小化时继续渲染auto按可见性自动决策。控制台中的用户可见文案来自 09-console-workspace.js{ key: performance, title: 性能与后台, hint: 画质档位、后台渲染和直播保持, items: [ fxConsoleItem(performance-quality-seg, 画质档位, 低配 中 高 超高 渲染质量), fxConsoleItem(performance-background-seg, 后台渲染策略, 自动优化 保持运行 停止释放), fxConsoleItem(t-liveBackgroundKeep, 直播后台保持, 最小化继续渲染), ]}从渲染运行时看isBackgroundReleaseMode()会进入释放帧率/缓存裁剪路径trimRuntimeCaches(..., release-frame)并在窗口重新可见/聚焦时通过recoverVisualsAfterBackground()恢复08-desktop-render-power.js。这解释了直播后台保持开启后不会进入低占用暂停的实现方式liveBackgroundKeep直接覆盖后台策略判定。六、关键修复清单与工程含义1. 用户存档应用后切歌回退问题修复应用用户存档后切歌/跳歌回退到上一个视觉预设。从持久化层看存档应用路径会把存档中的preset写入当前播放态04-visual-settings-persistence.js并配合presetForSave的播放态判断同文件 L715-L725确保播放中应用存档后切歌链路携带的是新预设而不是旧值。2. 全屏 DIY 悬浮入口遮挡视觉预设热键按钮不再被全屏 DIY 悬浮入口遮挡视觉控制台隐藏按钮会跟随一起隐藏不再残留孤立标记。这是纯 UI 层层级与显隐状态同步修复。3. 依赖更新与更新安全v1.1.0 更新了 Electron / electron-builder 依赖修复已知高风险构建依赖告警。同时保留了更新下载失败时的安全停住逻辑快速补丁失败后不再自动反复拉取完整安装包完整安装包下载完成后也不再自动打开需用户手动确认见 CHANGELOG.mdv1.1.0条目。这与项目更新入口只打开浏览器下载页、客户端内不应用补丁的分发哲学一致见 README.md 更新机制说明。七、安装建议与校验流程release notes 给出了 v1.1.0 的安装建议完整步骤如下不要继续运行或转发旧安装包尤其v1.0.10及更早版本先卸载旧版 Mineradio隔离旧.exe安装包和旧打包目录下载并安装Mineradio-1.1.0-Setup.exe安装后如需对照校验使用 Release 中提供的SHA256文件Mineradio-1.1.0-SHA256SUMS.txt。当前安装包暂未进行代码签名Windows 可能显示安全提示——这是未签名 Electron 安装包的常见现象应从可信来源下载并核对校验值。仓库中与安装/更新主题相关的补充资料包括docs/INSTALLER_STYLE.md安装器界面与行为风格说明docs/UPDATE_DELIVERY.md更新分发机制说明electron-builder.internal-beta.jsonelectron-builder 构建配置docs/RELEASE_NOTES_v2.2.0.md后续 2.2.0 版本的发布说明当前仓库为长期停更状态历史版本以 2.2.0 为最终正式版。八、从 v1.1.0 到当前仓库如何继续阅读v1.1.0 之后仓库经历了 v1.1.1安装器安全修复、v2.x 系列迭代最终停在 v2.2.0 并进入长期停更见 README.md 项目状态说明。如果你想深入验证本文涉及的机制可以按以下路径阅读默认视觉基线public/default-user-fx-archive.json → 05-packaged-fx-archive.js → 04-fx-defaults.js参数归一化与存档应用04-visual-settings-persistence.js渲染性能分级08-desktop-render-power.js 与 11-system-memory-controls.js控制台 UI 条目09-console-workspace.js视觉预设元数据00-preset-archive-data.js存档同步脚本scripts/sync-current-fx-default-archive.js支持--dry-run/--write/--source。在开发环境验证这些机制时可参考 README.md 的开发运行方式npm install后npm start启动桌面端npm run build:win生成 Windows NSIS 安装包产物位于dist/。【免费下载链接】Mineradio-paused一款以电影镜头、粒子视觉和歌词舞台为核心的沉浸式音乐播放器。项目地址: https://gitcode.com/gh_mirrors/mi/Mineradio-paused创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表