我的歌放在家里服务器上的 Navidrome 里,五千多首,标签都是自己整理的,上个月还让 Agent 批量标准化一遍。电脑上听没问题,手机上一直没找到用着顺手的客户端,于是便有了Mu3ic。
先说明一下:Mu3ic 是播放器,连的是你自己搭的服务器,不提供任何音乐。Navidrome 之外,兼容 Subsonic / OpenSubsonic 的服务端也能连。原生 Kotlin + Jetpack Compose ,安卓 7.0 以上,安装包 8 MB 左右。
安卓上的 Subsonic 客户端其实不少,我前后装过好几个。
音流功能比较全,但界面不够现代,用起来不顺手。界面现代的是 Symfonium ,功能也全,可它同时要管本地文件、网盘、Plex 、Jellyfin ,对 Navidrome 的适配反而一般,缓存机制也不好用;设置项多到要专门花时间调,买它还得走 Google Play 。开源的那几个,要么界面停在好多年前,要么能做的事太少。
我要的其实就几样:界面好看、好用,天天要用的东西,光这一条就筛掉了大半播放器;打开要快;只管连服务器听歌,别的不管。所以 Mu3ic 从一开始就定成只做流播,不扫描手机里的本地文件。手机上存的缓存和下载,都只是为了断网的时候还能接着听。
写到现在,我觉得它和别的客户端最不一样的有三点:
下面按我写它时想解决的事一件件说。
五千多首歌,每翻一页都要等服务器返回,滑快了就是一片空白。
Mu3ic 在手机上存一份曲库索引,整点和服务器同步一次。按单曲、专辑、歌手翻都是读本地,滑多快都不用等。搜索也是这三个维度一起出。
打开 App 先看到的是首页,三排卡片:
再往下是听歌统计:今天播了多少、连续听了几天、这周的曲线,按住曲线能看某一天和上周同一天的对比。
歌词逐行滚动,外语歌下面直接跟着中文翻译(服务器上的歌词带翻译就能显示)。
拖进度条的时候,手指停的那一句会浮出来:第几句、原文、译文。想回到某一句,看准了再松手就行,不用来回试。歌词这些都是基础版就有的。
听过的歌边播边存,还会提前缓存下一首。连不上服务器的时候,接着播缓存里的;换到一首没缓存的,等 10 秒还连不上就跳到下一首有缓存的。
打开离线模式之后,App 一个网络请求都不发。没缓存的歌会变灰,能播哪些一眼就知道。
专辑、歌手、歌单页都把封面做成页头,名字和按钮收在一座浮岛里。歌单里如果整张专辑都在,会并成一张专辑卡,不用一首首往下翻。
播放页分极简和详细两档,每档两款皮肤,一共四款:
衬底和数据两款的进度条画的是这首歌的真实波形,副歌在哪一眼就看到。每首分析一次就存下来,下载过、缓存过的歌直接用本地音频算,不多费流量。这两款皮肤和波形属于 Pro ;滑封面和标准是基础版的,进度条是一根细线。
Navidrome 本来就支持智能歌单,但要在曲库目录里放一个写满 JSON 规则的 .nsp 文件。Mu3ic 里可以直接新建:选一个模板(年代 × 语言、歌手代表作、流派、最近 N 天、高分,或者照着一个现有的歌单改),再加减条件,「满足全部」还是「满足任一」点一下就切。编辑的时候底部实时显示预计有多少首,这个数用的是手机上的曲库索引,不用等服务器。
自己建的智能歌单,以后可以在「⋯」里接着改规则。来自 .nsp 文件的那些照样能听,只是规则改不了(改了也会被下次扫描覆盖)。
浏览和播放智能歌单是基础版就有的,规则编辑器属于 Pro 。
混音是 App 自己按打分采样出来的播放列表,点一次重新抽一次:
混音很吃曲库标签,标签整理得越好越好用,具体要哪些标签写在后面的「注意事项」里。混音属于 Pro 。
基础版是完整的播放器:不限时,没有广告,不用注册。上面说的曲库、搜索、首页、歌词、缓存和离线模式、详情页、两款免费皮肤,都是基础版就有的。另外还有歌单、收藏、评分同步回服务器,听歌记录回传,播放键长按停止,应用内更新(下载后先校验签名再装)。
Pro 解锁这些:
App 里可以直接买,跳到手机浏览器用支付宝付。首发一个月推广价 ¥18 (原价 ¥38 ),到 11 月 5 日。一次买断,一码一机,每年可以自己换绑两次设备。
Navidrome 版本:大部分功能走的是 Subsonic 接口,老版本也能用。下面几项用到了 Navidrome 自己的接口,要 0.64.0 或以上:
版本不够时这几项用不了(建智能歌单会提示服务器不支持,语言那一节混音不出),别的照常用。
混音要哪些标签:
流派和语言不足 20 首的不单独出卡。因为太依赖标签,底栏的「混音」 tab 默认是关的,在设置 → 底栏里打开;首页的四张混音卡不受这个开关影响。
先在 1 楼放 10 个 Pro 码,先到先得;用完了会在楼里再放一批。一码一机,激活后就绑在这台手机上了,所以一人拿一个就好。用掉了麻烦在评论里回一下用掉的码,后面的人就不用白试了。
激活:设置 → 关于 → Pro → 输入激活码。
有问题、有想要的功能,直接在这里回我就行。如果您喜欢,可以 APP 内购买 Pro 会员解锁完整体验,首月仅需3818 买断,感谢支持。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.