Immich 3.0 发行说明 / 新功能

Immich 3.0 发行说明 / 新功能

Immich v3.0.0 是一次重大更新,带来了强大的自动化工具、专业级移动端照片编辑以及针对视频处理和后台同步的关键基础设施改进。虽然此次发布包含破坏性更改,但团队指出,这些更改主要影响第三方 API 集成,而非普通用户体验。

自动化与工作流

Immich v3.0.0 引入了 工作流 的预览功能,这是一款拖拽式构建器,允许用户通过链式触发器、过滤器和操作来自动化库操作。

用户可以在网页界面通过 Utilities > Workflows 访问此功能。系统同时支持可视化编辑器用于构建以及 JSON 编辑器用于共享配置。每个工作流由一个触发器(入口点)以及随后的一系列步骤组成,步骤可以包括条件过滤器和具体操作。为促进社区协作,工作流可以以纯文本或 JSON 文件形式共享。

移动端体验提升

非破坏性编辑

移动用户现在可以使用与 v2.5.0 网页版相同的非破坏性编辑套件。该系统支持裁剪、旋转和图像调节,而不会修改原始文件。编辑会以元数据形式保存,这意味着可以随时重新访问或恢复,并在移动端和网页平台之间同步。

请注意,一些之前的移动编辑功能——如重新着色照片、编辑 Live Photo 以及编辑本地资产——已被移除,计划在后续版本中恢复。

后台备份可靠性

两大移动平台的备份稳定性得到了显著提升:

  • Android: 新的周期性任务调度器取代了之前仅限于新拍摄照片的系统。应用现在可以在后台上传整个库,同时更好地遵守 Android 的后台执行限制,并提供电池优化设置的警告。
  • iOS: 背景刷新任务现在并行执行同步和上传工作,确保在 iOS 提供的受限时间窗口内开始上传。

Android 相册集成

Immich 现在可以作为 Android 系统相册/图片查看器。当从其他应用打开照片或视频时,用户可以选择 Immich 在 Immich 查看器中直接查看资产,并可选择将文件上传到库或分享。

视频与性能基础设施

实时视频转码(预览)

Immich 现在支持 HLS(HTTP Live Streaming)和实时视频转码,服务器可以即时转码视频。这消除了为每个文件生成离线转码的需求,降低了存储开销。主要优势包括:

  • 自动和手动质量切换。
  • 转码为客户端设备支持的最佳编解码器。

此功能仍属实验性,目前仅限于网页应用。它需要强大的服务器,强烈建议使用硬件加速。

网页视频播放器

为网页应用实现了全新自定义视频播放器,以确保在所有设备上拥有一致的控制和布局。此举专门解决了 iOS 上原生系统控制经常被 Immich 导航栏遮挡的问题。

库管理与维护

完整性检查

为确保数据安全,维护页面现在包含 完整性报告。Immich 会扫描文件系统并与数据库进行比对,以识别:

  • 未跟踪文件: 磁盘上存在但数据库中没有记录的文件。
  • 缺失文件: 数据库中引用但磁盘上已不存在的文件。
  • 校验和不匹配: 已损坏或被错误重命名的文件。

最近添加页面

在网页(Explore 选项卡)和移动端(Search 选项卡)均提供全新的 “最近添加” 视图。该视图按资产被添加到系统的日期排序,而非照片拍摄日期,简化了大批量导入的管理。

技术迁移与破坏性更改

升级到 v3 需要在运行 docker compose pull && docker compose up -d 之前,将 .env 文件中的 IMMICH_VERSION 改为 v3

破坏性更改主要针对 API 和内部重构,包括:

  • class-validator 迁移到 zod
  • 移除已废弃的环境变量和多个 API 端点(例如 /api/server/themegetRandom)。
  • 停止对 pgvecto.rs 的支持。
  • 机器学习组件需要 numpy 2.4

社区洞察

用户讨论中强调 Immich 作为自托管的 Google 和 Apple Photos 替代方案的强大地位,尤其在配合 Tailscale 等网络工具时。然而,也有用户对缺乏端到端加密(E2EE)表示担忧。

"我考虑过 Immich,但最终选择了 Ente,因为它有加密……我喜欢可以分享相册且任何人都能在无需账户的情况下贡献内容。"

相反,也有用户认为对家庭托管的数据来说 E2EE 并非必要,且会增加数据恢复的复杂度:

"因为没有 e2ee……如果你丢失了密钥,你并不会失去唯一的祖母记忆——只要把 .jpg 文件复制到新设备上就行。"

Sources