Ubuntu 上 Jellyfin 视频缓存优化指南
一 核心缓存设置
- 在管理界面进入:控制台 > 网络 > 缓存设置,按场景给出如下建议:
- 客户端缓存大小:家庭局域网建议设为4GB,远程访问2GB,移动网络1GB。
- 启用媒体缓存,并将缓存目录指向SSD(顺序读写更快,显著降低首播与快进卡顿)。
- 缓存保留期:家庭局域网30天,远程访问7天,移动网络3天。
- 目的:提升首播命中率、减少重复请求、降低带宽波动对播放的影响。
二 网络与传输层优化
- 启用 HTTP 压缩:编辑配置文件 config/system.xml,将 HttpCompression 设为 true,并将 CompressionLevel 设为 6(1–9,6为平衡值),可减少文本类资源(清单、字幕、封面等)传输体积。
- 启用 HTTP/2(需 HTTPS 环境):确保启用 HttpsRedirection 与 Http2,提升多路复用与连接效率。
- 并发连接数:将“最大并发连接数”设为“设备数 × 2”,避免并发不足导致排队与卡顿。
- 自适应比特率流(ABR):在 控制台 > 播放 > 视频转码 中设置“最大比特率”约为可用带宽的70%(如50Mbps宽带设为35Mbps),并启用“限制远程比特率:自动”,转码质量选“平衡”或“速度优先”,以减少因带宽不足引起的频繁缓冲。
三 系统与存储优化
- 更新系统与组件:保持 Ubuntu、Jellyfin 与 ffmpeg-jellyfin 为最新版本,获取性能修复与兼容性提升。
- 硬件加速:优先启用 Intel Quick Sync(QSV)或 VAAPI,降低转码 CPU 占用,间接提升缓存与播放稳定性。
- 内存与并发:通过 systemd 服务文件合理调整 Jellyfin 的内存限制;结合并发会话数设置,避免资源争用。
- 存储与挂载:媒体库位于 NAS 时,优先使用 NFS 挂载以获得更稳定的访问与元数据操作性能。
- 监控与排障:使用 htop、nvidia-smi(如用 NVIDIA)观察 CPU/GPU/IO,定位瓶颈并验证优化成效。
四 场景化配置建议
| 场景 |
客户端缓存大小 |
缓存保留期 |
缓存目录 |
关键网络设置 |
| 家庭局域网 |
4GB |
30天 |
SSD |
ABR 最大比特率≈带宽70%;启用 HTTP/2;并发=设备数×2 |
| 远程访问 |
2GB |
7天 |
SSD |
启用 HTTP 压缩;限制远程比特率=自动;并发=设备数×2 |
| 移动网络 |
1GB |
3天 |
SSD |
ABR 保守值;启用压缩;必要时降低画质/并发 |
| 以上组合可在不同网络条件下平衡首播速度、卡顿率与带宽占用。 |
|
|
|
|
五 验证与故障排查
- 在 控制台 > 仪表板 > 网络统计 观察:平均带宽使用率应低于带宽上限的70%;转码任务并发建议小于3;缓存命中率目标**>60%**。
- 查看日志 log/jellyfin.log,搜索关键词如 bandwidth、transcode,定位带宽不足、转码过载或缓存未命中等问题。
- 若播放器端仍有卡顿,可在客户端尝试切换为 LibVLC 或外部播放器(如 Kodi/VLC)以排除播放器兼容性问题。