# MusicFab 项目规划

更新日期：2026-09-23

这份计划要解决一件事：用户下载完音乐后，能直接听、方便整理，也能轻松带到手机和其他设备上。

建议先把现有功能做好，再逐步增加媒体库、手机播放器和设备同步。P0 最先做，P1 随后做，P2 做小范围试用，P3 根据前面的效果决定是否投入。这里先确定顺序，具体时间等工作量评估后再排。

| 优先级 | 主要做什么 | 用户得到什么 |
|---|---|---|
| P0 | 歌曲信息、播放兼容、界面操作和失败处理 | 下载后少出错，拿到文件就能用 |
| P1 | 媒体库、播放器歌单、U 盘拷贝、完整试用 | 音乐好找、好整理，也方便带走 |
| P2 | 手机播放器、Wi-Fi 同步、自动整理、NAS | 平时少操作，音乐能跟着设备走 |
| P3 | 手表、远程访问、更多手机和传输方式 | 覆盖更多听歌场景 |

## 开始前，先把现状看清楚

MusicFab 已有本地曲目、歌单管理和外接盘复制的代码基础。先用当前版本走一遍，确认哪些能直接用、哪些需要改，避免重复开发。

同时看一下用户反馈：大家下载以后通常用什么播放器，最常遇到的是标签不对、播放失败，还是拷到手机太麻烦。准备一批固定测试歌曲，包含多碟专辑、多人合作歌曲、中日韩歌名、不同格式和异常文件，后面的改动都用这批文件检查。

这一步的结果应当很简单：一份需要优先解决的问题清单，以及第一批要支持的播放器和设备。

## P0：先把下载后的体验做好

### 1. 把歌曲信息写正确

Meta 就是歌曲里的标题、歌手、专辑、封面、曲目顺序等信息。用户不应该每次下载后，还要去其他软件里重新整理这些内容。

先做这些：

- 统一标题、歌手、专辑艺人、专辑、曲号、碟号、封面和歌词的处理方式。
- 让 MP3、M4A、FLAC 等文件在常用播放器中尽量显示一致，中文和日文不乱码。
- 保存后重新读取文件，确认信息确实写进去了；缺少的信息不要随意补造。
- 保留原文件，修改失败可以恢复。已经由用户改好的信息，不被自动更新覆盖。

**做到什么算完成：** 测试歌曲在指定播放器中显示正确，多碟专辑顺序正常，封面能显示；写入失败有明确提示，不把有问题的文件报成成功。

第一版先把新下载文件做好，旧曲库的批量修复放到 P1。

### 2. 让文件在 iTunes、Apple Music、QuickTime 和 foobar2000 中正常使用

用户关心的是能不能听，不需要先弄懂各种音频参数。可以让用户选择“用于 Apple 音乐库”“用于 foobar2000”“保存无损收藏”，由 MusicFab 推荐经过测试的设置。

先做这些：

- 分别测试 Windows 和 macOS 上选定版本的播放器，明确支持范围。
- 检查能否导入、完整播放、拖动进度，以及时长、封面和专辑分类是否正确。
- 原文件已经能用时尽量直接保留；需要转换时，说明会生成什么文件。
- 保留真实音质信息，不能把有损文件转成 FLAC 后就说音质提高了。

**做到什么算完成：** 用户按推荐设置生成文件后，能在对应播放器中正常导入和播放。不支持的情况能提前说明，并提供可行的转换选择。

这里先解决文件本身的兼容性，整张歌单的导出放到 P1。“Quick Player”暂按 QuickTime Player 理解。

### 3. 让操作更顺，也让失败后更容易继续

从添加歌曲到开始播放，尽量让每一步都清楚。

先做这些：

- 下载前看得到将保存哪些歌曲、保存在哪里、大约需要多少空间。
- 进度能分清正在下载、正在整理文件，还是已经完成。
- 完成后可以直接播放、打开所在文件夹，并记住用户选择的播放器。
- 一张歌单部分失败时，只重试失败的歌曲。
- 出错时说明下一步怎么做，例如重新登录、释放空间或稍后重试。
- 改善长歌名显示、搜索、批量操作和界面卡顿等实际问题。

**做到什么算完成：** 用户不看教程也能完成一次下载和播放；失败后知道怎么处理，已经完成的歌曲不用重新下载。

下载本身的稳定性仍要持续维护。新增媒体库和移动端不能让现有服务的问题长期得不到修复。

## P1：让音乐好管理、好导出、好拷贝

### 1. 把“已下载”升级成“我的音乐”

用户应该能按歌手、专辑和歌单找音乐，也能把自己原来保存的歌曲放进来统一管理。

先做这些：

- 在现有本地管理功能上增加专辑、艺人、歌曲和歌单视图。
- 支持导入电脑里已有的音乐。
- 找出缺封面、信息不完整、文件找不到和可能重复的歌曲。
- 批量修改前先预览，改错了可以撤销。
- 区分现场版、录音室版、重制版，不因为歌名相同就合并。
- 文件移了位置可以重新找到；外接硬盘暂时没接上，也保留收藏记录。

**做到什么算完成：** 旧收藏升级后不丢，用户能快速找到歌曲并完成整理；自动处理不会弄乱原目录或覆盖手工修改。

先做好整理和查找，播放可以继续调用用户已有的播放器。

### 2. 一次导出，就能在常用播放器里使用

你提到的“生成播放器 project”，可以做成“导出给某个播放器”：MusicFab 把音乐文件、歌单、封面和歌词准备好，用户直接打开或导入。

第一批先支持 foobar2000 和 Apple 音乐库：

- 在本机使用时，可以只生成引用现有音乐的歌单。
- 需要换电脑或放进 U 盘时，生成包含音乐文件的完整文件夹。
- 保留歌单顺序，说明哪些歌曲缺失。
- 再次导出时更新变化的内容，避免不断生成重复文件。

**做到什么算完成：** 整个音乐文件夹换了位置，歌单仍能找到歌曲；歌曲数量和顺序正确，重复导出不会越弄越乱。

foobar2000 优先使用通用歌单格式，不直接修改它的内部配置。Apple 的歌单文件不包含音频，需要先把音乐导入库里，再处理歌单。这些差异由导出流程和清楚的提示来处理。

### 3. 把 U 盘和文件夹拷贝做可靠

先改善已有的外接盘复制，再把同样的经验用到手机传输上。

先做这些：

- 拷贝前检查空间和写入权限。
- 只复制新增或变化的文件，已经存在且相同的文件不用再传。
- 遇到同名文件时说明如何处理，不随意覆盖。
- 中途拔盘或空间不足后，重新连接可以继续处理未完成部分。
- 拷贝完成后检查文件是否完整，显示成功和失败的歌曲。

**做到什么算完成：** 用户知道哪些歌曲已经拷好；中断后不用全部重来；不会误删 U 盘里原有的音乐，也不会影响电脑上的原文件。

### 4. 让试用用户真正体验一次“下载到听歌”

试用应该让用户判断 MusicFab 是否适合自己的播放器和设备。

可以先试一小组完整歌曲，让用户体验下载、标签、导入和播放，再看是否更容易决定购买。配套教程也围绕具体用途，例如“导入 Apple Music”“准备车载 U 盘”，减少用户自己摸索。

**做到什么算完成：** 试用流程顺畅，并能看出购买、退款和求助情况有没有改善。先小范围试，不直接调整所有套餐或已有用户权益。

这项工作在 P0 改进可用后就能开始，不必等手机播放器。

## P2：把音乐带到手机，并减少重复操作

### 1. 做一个轻量手机播放器，打通 Wi-Fi 传输

第一版先选 iOS 或 Android 中的一个。根据现有用户的设备情况决定，不同时铺开所有平台。

用户第一次扫码或输入配对码，确认电脑和手机属于自己。以后两台设备在合适的网络条件下，可以找到彼此，补传新增音乐。

手机端先提供：

- 接收音乐、查看专辑和歌单、搜索、离线播放。
- 锁屏播放控制、耳机操作和存储空间管理。
- 传输进度、失败提示，以及断开后继续传输。
- 取消设备配对，防止不再使用的设备继续接收文件。

**做到什么算完成：** 音乐传到手机后，关闭电脑、断开网络仍然能听；锁屏、切换应用、断网和空间不足时，结果清楚且能恢复。

第一版先从电脑往手机传。手机上删除一个副本，不应顺便删除电脑原文件。自动后台传输能做到什么程度，要在真实手机上验证后再承诺。

手机权限、后台限制和应用分发可以提前做小样机检查，尽早发现困难；正式开发仍按 P2 安排。

### 2. 帮用户自动准备日常要听的音乐

先做几个简单、常用的规则，例如：

- 新下载的专辑自动加入指定歌单，并更新 U 盘。
- 为明天的通勤准备两小时音乐。
- 手机最多放 5 GB，固定收藏一直保留，其余按规则更新。
- 保存歌单之前的内容和顺序，误改以后可以恢复列表。

**做到什么算完成：** 同一个规则可以反复使用，用户能看到每次做了什么；失败后可以继续，暂停后不会再启动新任务；不会误删原文件或覆盖手工修改。

先用于电脑和 U 盘，手机传输稳定后再接入。恢复歌单列表，不等于能自动找回已经丢失的音乐文件。

### 3. 让家里的 NAS 和音乐服务器也能用起来

有些用户把音乐放在 NAS 上，用其他软件收听。MusicFab 可以帮他们把新音乐整理到指定目录，并更新歌单。

先选一个有明确需求的目标，例如 Navidrome，把配置和使用流程做清楚。后续再逐个增加支持。

**做到什么算完成：** 新增音乐能被目标软件找到，歌单和专辑分类正确；NAS 没开机或网络断开时，不丢本地收藏，恢复连接后可以继续处理。

这项工作可以在媒体库和导出功能完成后开始，不必等待手机端。

## P3：根据前面的使用情况继续扩展

### 1. 手表离线听歌

先服务“跑步时不带手机”这个明确场景。选一种手表，把一份运动歌单传进去，检查存储空间、电量、同步时间和耳机播放。

**做到什么算完成：** 用户离开手机后，能完整听完准备好的歌单；同步失败可以恢复。

Apple Watch 和 Wear OS 分开处理，并依赖各自需要的手机平台。第一版不追求把整个音乐库都装进手表。

### 2. 不在同一个 Wi-Fi 下，也能访问和备份音乐

这部分分开做，避免一次做得太大：

- **远程传输：** 人在外面，也能把家里电脑上的音乐传到手机。
- **备份恢复：** 将音乐和收藏信息备份到用户选择的存储位置，换电脑或误操作后能够恢复。
- **双向修改：** 手机和电脑都能改歌单，并处理两边同时修改或删除的情况。

先确认用户确实需要，再评估成本和实现方式。远程传输、备份不必等双向修改一起上线。

**做到什么算完成：** 用真实网络和设备验证传输、断线恢复和备份恢复。只显示上传成功，不算备份功能已经做好。

### 3. 支持更多手机和传输方式

一个手机平台好用后，再增加另一个。AirDrop、系统分享、蓝牙辅助发现等可以分别尝试，不要求一次全部支持。

**做到什么算完成：** 每增加一种方式，都明确支持哪些设备、文件会到哪里、失败后怎么办，并在实际设备上测试。

蓝牙能播放音乐，不代表能复制音乐文件；系统分享能发送一次文件，也不代表能长期自动同步。

## 以后还值得尝试的功能

这些方向先保留，等用户需求更明确后再选，避免挤占前面的基础改进。

| 想法 | 可以帮用户解决什么 |
|---|---|
| 专辑完整度和愿望清单 | 看清某个版本的专辑还缺哪些歌曲 |
| 古典音乐整理 | 按作品、乐章、指挥和乐团管理音乐 |
| 有声书、播客续听 | 保留章节、书签和上次听到的位置 |
| 用一句话整理曲库 | 例如“找出所有没有封面的日语专辑”，先给建议再执行修改 |
| 歌词伴读 | 看歌词、重复练习某一段、做学习笔记 |
| 音量一致 | 减少歌曲之间忽大忽小，同时保留原音频 |
| 收藏回顾 | 找回很久没听的专辑，查看自己的收藏变化 |
| 车载和家庭播放入口 | 在车里或家中更方便地打开已准备好的音乐 |

## 实际从哪里开始

建议第一批就做三件事：**歌曲信息写正确、Apple/foobar2000 播放兼容、下载完成后的操作更顺。**

先用当前版本和固定歌曲找出问题，再做出一个从下载到播放都能走通的版本。能独立改善体验的部分可以先发布，不必等整份计划全部完成。

接下来建设媒体库、歌单导出和可靠拷贝。歌曲怎么识别、歌单怎么保存、复制后如何确认完整，这些规则先统一，相关功能就可以并行推进。

手机端先验证一个平台。只有当用户愿意反复使用，且传输和播放足够稳定，再扩大到更多手机、手表和远程功能。

## 怎么判断这些改进有没有用

主要看五件事：

1. 用户从开始下载到真正听到歌，花的时间和操作是否减少。
2. 标签错误、播放失败、重复文件等问题是否减少。
3. 整理或传输中断后，用户能否方便地继续。
4. 用户是否会再次使用媒体库、导出和同步功能。
5. 试用后购买、退款和求助情况是否改善。

具体目标先测当前情况再定，不预先编一个提升比例。外部播放器已经打开，不代表用户真的播放成功；无法自动确认时，通过实际试用检查。

有一条要求贯穿所有阶段：**用户原来的音乐、手工修改和收藏不能因为新功能而丢失。** 涉及移动、修改、删除和升级的操作，要能恢复；发现丢文件、误删或文件损坏，就先修好再发布。
