转码与码率上限——蜂窝与 Wi-Fi 分别控流量
为什么需要码率上限
Hi-Res FLAC 通常 500kbps ~ 1.5Mbps,DSD 更夸张(DSD64 理论 5.6Mbps、DSD128 翻一倍)。如果蜂窝网络下直接拉原始文件,一首 Hi-Res 专辑就能吃掉几十到上百 MB 流量。
Symfonium 允许你分别给蜂窝网络和 Wi-Fi 设置最大码率上限。当媒体源是支持服务器端转码的那类(Plex、Emby、Jellyfin、Subsonic 系、Audiobookshelf),Symfonium 会在拉流前告诉服务器:"我最多要 320kbps,帮我转好再给我"。服务器转码后再推流,手机上收的就是已经压缩过的、符合上限的码流。
设置步骤
设置 → Offline → 流量控制:
- Wi-Fi 最大码率:Wi-Fi 下用多高码率都行,建议设成源文件能提供的上限(比如 192kHz / 320kbps)
- 蜂窝最大码率:蜂窝网络下自动压到多少,建议 128kbps(AMR-WB 或 Opus 编码)或 320kbps(AAC)
- 可下载的最大文件大小:可以额外加一道总大小的限制,避免拉了一首超大文件才发现超了
哪些媒体源支持服务器端转码
| 支持转码 | 不支持转码 |
|---|---|
| Plex、Emby、Jellyfin、Navidrome、OpenSubsonic、Subsonic、Audiobookshelf | 本地文件、SMB、WebDAV、所有云盘 |
不支持服务器端转码的源(比如 SMB 上的 FLAC 共享、Google Drive 里的 FLAC 文件),Symfonium 拉的是原始文件,没法在服务器端先压缩。这时候如果你想省蜂窝流量:
- 先在 Wi-Fi 下离线缓存(设置转码缓存选项)
- 或者先把这些文件同步到一个支持转码的媒体服务器上,再接到 Symfonium
本地转码 vs 服务器转码
Symfonium 本身也有一个本地转码引擎,主要用在:
- 投屏到 Chromecast / UPnP 时,远程设备不支持某些格式,Symfonium 在手机上转好再推
- 想在 Chromecast 上叠加 ReplayGain(实验性)
本地转码会用手机 CPU、耗电、耗临时存储,不如服务器端转码干净。能在服务器端做的就别让手机做。
格式兼容矩阵
服务器端转码能处理的格式取决于服务器本身:
- Plex:最灵活,几乎所有输入格式都能转输出成 MP3 / AAC / Opus / WAV / FLAC
- Jellyfin / Emby:类似,FFmpeg 兜底
- Navidrome / Subsonic:主要支持 MP3 / Opus / AAC 输出,输入覆盖 FLAC / MP3 / Ogg 等主流格式
- Audiobookshelf:主要面向有声书,输出格式有限
具体支持什么,以服务器端配置为准。Symfonium 会自动协商,协商不了就拉原始文件。
常见坑
- 设了码率上限但还是被拉原始文件? 确认你当前用的媒体源是不是在"支持转码"列表里;不支持的话 Symfonium 无能为力
- Wi-Fi 下被设了太低上限? 很多人默认 Wi-Fi 也只给 320kbps——如果你的曲库有 Hi-Res,Wi-Fi 上限可以设高一点甚至设成 Unlimited
- 转码质量差? 有些服务器默认用很低质量的转码预设(比如 128kbps MP3),可以去服务器端转码配置里调更高的编码质量