跳到正文
V2EX·· 1 天前AI 评分24

离音(Unstream)iOS 本地音乐播放器:支持 Wi-Fi 传歌、FLAC/DSD 和 10 段参数 EQ,开发者送 Pro 兑换码

做了一个 iOS 本地音乐播放器: Wi-Fi 拖歌、FLAC/DSD、10 段参数 EQ ,发帖送一波永久 pro 送码

AI 导读

开发者推出 iOS 本地音乐播放器离音(Unstream),支持通过 Wi-Fi 局域网从浏览器拖拽歌曲,兼容 FLAC、DSD 等格式,并提供 10 段参数 EQ。应用免费下载,Pro 国区一次性买断价为 ¥68,无订阅、无广告;Pro 解锁 DSD、EQ 曲线保存等功能。

正文

利益相关:开发者本人。免费下载,Pro 国区 一次性买断,没有订阅、没有广告。发在分享创造,主要是想收真实反馈,不是求五星。

一、为什么做

我自己的曲库在电脑和 NAS 上,几千首,FLAC 为主,还有一些十几年前 rip 的 MP3 。用 iPhone 听这些歌一直很别扭:iTunes/Finder 同步看运气,Wi-Fi 同步经常卡;流媒体上要么没有版本,要么今天有明天没;试过几个本地播放器,传歌、曲库、播放总有一块是凑合的。

后来想明白了,我要的东西其实很小:电脑浏览器把歌拖进去,手机上打开就能听,不要账号,不要云,不要订阅。于是就自己写了离音( Unstream )。

二、传歌

  • App 里开「 Wi-Fi 传歌」,同一局域网下用电脑浏览器打开 App 显示的地址;
  • 文件和整个文件夹都可以直接拖进去,批量上传,重名自动跳过;
  • 网页端能浏览目录、搜索、按名称/大小/类型排序、试听、重命名、移动、删除;
  • 可以设上传密码(存 Keychain ),防止同网段的人往你手机里塞东西;
  • 服务只在局域网内跑,IPv6 监听也收在 loopback ,不开公网。

三、曲库和播放

  • 格式:MP3 、M4A/MP4 、AAC 、ALAC ( m4a/caf )、WAV 、AIFF/AIF 、CAF 、FLAC 、OGG Vorbis 、Opus 、MP1/MP2 ,以及 DSD 的 DSF/DFF ( Pro )。APE 不支持,DST 压缩的 DFF 也不支持。
  • 曲库:搜索、A-Z 索引、排序、收藏、歌单、艺术家、文件夹。歌单存在 SQLite 里,支持拖拽排序。
  • 关联文件夹:可以把「文件」 App 里的文件夹链进来,原地引用不复制; iCloud Drive 里没下载的,点播放会先按需下载。
  • 文件改名或移动后,歌单按内容重新关联,不会整条失效。
  • AirDrop 、「用其他应用打开」、文件 App 都能批量导入; Documents 目录有外部改动时列表会刷新。
  • 后台播放、锁屏/控制中心、主屏和锁屏 Widget ( iOS 17+ 可以直接播放/暂停/切歌)。

四、声音

  • 10 段参数 EQ:每段可调中心频率、增益、Q ,带 Preamp 、9 个预设和自定义曲线。免费能实时调,保存曲线和部分预设要 Pro 。
  • ReplayGain:读 ID3v2 TXXX 和 Vorbis Comment 的 track/album gain ,支持关/单曲/专辑,带防削波。
  • DSD:DSF/DFF 转 24-bit PCM ,实时流式解码,可拖进度( Pro )。
  • 蓝牙和 AirPlay 会协商采样率,尽量避免无谓重采样。
  • 播放页点格式徽标,能看到完整信号链:文件 → 解码 → 处理 → 输出,以及哪一步在重采样。编码按文件内容识别,不只看扩展名,AAC/ALAC/MP2 不会标错。
  • 歌词:.lrc 侧载,支持增强型 LRC 的逐字高亮,也能读内嵌歌词;锁屏和 Widget 显示当前行,也可以悬浮在封面上。

五、外观和其它

  • 亮/暗/纯黑、强调色、多种唱片样式、默认封面、App 图标。
  • iPhone + iPad ,iOS 15 起,界面 16 种语言(含简繁中文)。
  • 安装包 12 MB 。

六、技术栈

  • UIKit ,不是 SwiftUI 。要支持 iOS 15 ,而且播放页的布局和手势需要比较细的控制。
  • AVAudioEngine + AVAudioUnitEQ + AVAudioUnitTimePitch ;原生格式走 Core Audio ,加载失败回退 AVAudioPlayer/AVPlayer 。
  • OGG/Opus 用自编译的 libogg/libvorbis/libopus XCFramework ; MP1/MP2 用 vendored minimp3 软解; DSD 是自己写的 parser + PCM 转码。
  • 歌单用 SQLite (直接 C API ),设置走 UserDefaults ,上传密码和 Pro 状态放 Keychain 。
  • 内置 HTTP 服务基于 GCDWebServer ,patch 了 IPv6 只监听 loopback 。
  • 没有第三方分析或崩溃 SDK 。

七、和同类怎么选

不是来吊打谁的,取舍不同: 不是来吊打谁的,取舍不同:

  • VLC:万能,但它是播放器思维,不是曲库思维;传歌和歌单不是重点。
  • FileBrowser/Documents:文件管理强,播放是附属。
  • Doppler/Evermusic:设计和生态更成熟,但更偏 Apple Music 导入、云和订阅;我想要不登录、不碰云。
  • foobar2000 mobile:够硬核,但 UI 和传歌体验我不适应。

如果你要的是「打开就是我的歌,传歌不用学」,这个方向大概对;如果你要 CarPlay 、网盘直连、自动刮削封面歌词,它现在还不够。

八、不足

  • 暂时没有 CarPlay ,没有 Android 。
  • 不会自动匹配歌词和封面,要靠文件自带元数据或 .lrc 。
  • 没有 WebDAV/网盘直连,没有云同步。
  • Wi-Fi 上传要手动输地址,还没做扫码。
  • 睡眠定时、变速、保存 EQ 曲线、DSD 、部分主题/图标/唱片样式是 Pro 。
  • 闭源,个人项目,代码还没整理到能开源的程度。
  • 一个人做,更新节奏不快。

九、收费

免费下载。Pro 国区 ¥68 ,一次性买断,没有订阅、没有会员等级、没有广告。Pro 解锁 DSD 、EQ 曲线保存、0.75–2× 变速、睡眠定时、部分唱片样式/主题/图标、自定义封面图。

十、想听的意见

  1. 传歌这一步,你现在的 workaround 是什么?除了扫码和手输 IP ,还有更顺的方案吗?
  2. 本地曲库你更在意「管理」还是「播放」?我现在两边都做了一点,可能都不够深。
  3. 有没有哪个格式/编码是你必须有、但我漏了的?
  4. 睡眠定时和变速放在 Pro 里,我自己也犹豫。你觉得这个拆法合理吗?

App Store 国区: https://apps.apple.com/cn/app/id6767066746 美区: https://apps.apple.com/us/app/id6767066746 搜「离音」或「 Unstream 」也可以。

截图我放在下面:传歌页 / 曲库 / 播放页 / EQ / 信号链。

送十个码,大家轻喷,尽量回。

4JLX8K3WM46T37N8R8
X43R7EP7MKJHLLK73T
MLRRPNPNEE3LMRNNPF
RJJXJLYM46HK8LNK3W
E6FM3L78K3MLJ6K8EW
6YXXTY3R4JMXFWYJAP
JHRHFWJKN84R7XNAKJ
7EJFMYPJELFP3JWMJE
86KNRT6JHWR6PMAPPT
P8WEY8JFRXLYT34N6K

https://www.v2ex.com/i/U8NEgC4k.webp https://www.v2ex.com/i/ohLm38k1.webp https://www.v2ex.com/i/Tk8uG25d.webp https://www.v2ex.com/i/XPTS29Hy.webp https://www.v2ex.com/i/7qS0DN8i.webp https://www.v2ex.com/i/vjT2ZSeZ.webp https://www.v2ex.com/i/6pBrSfLa.webp https://www.v2ex.com/i/xdtDy6T8.webp https://www.v2ex.com/i/45mgehz6.webp https://www.v2ex.com/i/3q9k3TR1.webp

来源:V2EX · v2ex.com