news 2026/8/30 7:53:23

家庭媒体中心搭照片库:Jellyfin 照片管理,10 分钟从乱到齐

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
家庭媒体中心搭照片库:Jellyfin 照片管理,10 分钟从乱到齐

家庭媒体中心搭照片库:Jellyfin 照片管理,10 分钟从乱到齐

【免费下载链接】jellyfinThe Free Software Media System - Server Backend & API项目地址: https://gitcode.com/GitHub_Trending/je/jellyfin

手机 8 千张、相机卡 3 千张、旧笔记本里还有几个没敢删的文件夹——照片越存越散,想翻出 2019 年那张合影,得挨个设备找。Jellyfin 是一套免费开源的家庭媒体中心,很多人只拿它看剧,其实它管照片的能力一直被低估:你只需把照片文件夹指给它,它自己读元数据、按拍摄时间归档,之后家里任何设备的浏览器都能访问。

为什么是 Jellyfin,而不是云相册

价值就一句话:照片文件从头到尾留在你自己的机器上,Jellyfin 只负责扫描、整理和展示,不收订阅费,也不经过第三方服务器。相比云相册,它没有存储额度限制;相比自己搭网盘,它多做了元数据解析和统一的多端浏览界面。对只想"把家里的照片放一处"的人来说,这点就够用了。

10 分钟搭一个能看照片的库

👇 全程按顺序做一遍就行,不用分步找资料:

  1. 装好服务器。在 Debian/Ubuntu 上用官方安装脚本,或用 Docker 一行起一个容器。装完浏览器打开http://你的服务器IP:8096
  2. 初始化。第一次访问会进入向导:设管理员账号 → 选语言 → 创建媒体库。
  3. 建照片库。在控制台"媒体库"里点"添加",库类型直接选"照片",指向存照片的文件夹。
  4. 等它扫完。扫描期间服务器会解析每张图片,结束后刷新页面,照片库就有了。

到这里,目录结构就是浏览层级:一个子文件夹等于一个相册;每张卡片显示的是拍摄日期,不是文件修改时间。

它替你做了什么:EXIF 提取

照片库建好之后,幕后干活的是 PhotoProvider.cs。它对 jpg、jpeg、png、tiff、cr2、webp、avif 这 7 种格式打开文件头,读出相机品牌型号、拍摄日期、光圈、快门、焦距、ISO、经纬度,还有照片里带的关键词标签,全部写进数据库。

item.CameraMake = image.ImageTag.Make; // 相机品牌,如 "Canon" item.CameraModel = image.ImageTag.Model; // 型号,如 "EOS R6" item.DateCreated = dateTaken.Value; // 拍摄时间,用于按年归档 item.Latitude = image.ImageTag.Latitude; // 地理位置 item.Longitude = image.ImageTag.Longitude;

这 5 行的白话版:把文件头里的品牌、型号、时间、坐标抄进数据库。之后你能按年份翻、按设备找、按关键词筛——都是这一次"抄写"换来的。这些字段最终存放在 Photo.cs 里,每张图对应的相册容器则是 PhotoAlbum.cs。

进阶一:用元数据把库"喂"肥

EXIF 只是起点,两件事能把它用出价值:

  • 按拍摄日期建相册:导入后去"库编辑器"把整理方式改成按年/按月,2 万张照片瞬间变成 5 个年份文件夹,比手动分文件夹快几个量级。
  • 给截图和修图留后手:没有 EXIF 时,程序会直接读图片像素补上宽高(PhotoProvider.cs 里的回退逻辑),所以缩略图比例不会错乱。

进阶二:家庭成员各管各的

照片库搭好后,隐私问题马上冒出来:亲戚不该看到孩子的照片。Jellyfin 的用户体系直接够用——控制台"用户"里给每人建账号,逐个勾选他能看的媒体库;认证和授权由 AuthenticationManager.cs 统一拦截,未登录请求一律拒绝。原始文件只读不写,误删的风险比往网盘里传低得多。

常见坑与排查

  • 有些照片不显示:先查格式,白名单外(比如 HEIC)的会直接跳过,转换后再导入。
  • 拍摄日期、相机信息是空的:通常是截图或转发图,EXIF 本身不存在,属正常现象,不影响浏览。
  • 照片改过却"没更新":扫描器靠文件修改时间判断变化(见 PhotoProvider 的HasChanged),手动改过时间戳的,进控制台触发一次"刷新元数据"即可。
  • 别只信一份库:定期用完整备份功能把数据库和配置打包走一份,BackupService.cs 负责这项,误操作后恢复靠它。

做完备份这一步,这套家庭照片库就算真正立住了——今晚就可以把手机里最旧的那个文件夹导进去试试。

【免费下载链接】jellyfinThe Free Software Media System - Server Backend & API项目地址: https://gitcode.com/GitHub_Trending/je/jellyfin

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/30 7:53:05

技术面试备战指南:从面经考点反推知识体系

看到《2019年春招汇总,技术类校招社招千道面试题,几百份大厂面经(附答案考点)》这个标题的时候,我第一反应是特别亲切,因为我当年就是靠类似这样的资料杀出重围的。说实话,技术类面试的准备&…

作者头像 李华
网站建设 2026/8/30 7:50:12

算法竞赛代码模板库:从Dijkstra到线段树,构建你的夺冠武器库

简介:本资源是一套面向OI、ACM、PAT、CSP等编程竞赛选手的高频代码模板合集,聚焦算法竞赛中反复出现的核心问题求解范式,助力参赛者在限时高压环境下快速编码、减少低级错误、提升AC率。压缩包共53个文件,以41篇Markdown文档为主干…

作者头像 李华
网站建设 2026/8/30 7:49:44

图片生成3D、本地推理与模型路由:五大GitHub热点技术全解析

「GitHub 一周热点 128 期」这期没有只聊单点项目,而是把五个方向放在一起:图片生成 3D 模型、现代化 Linux、Mac 优化的本地模型推理、模型智能路由、端侧小模型。如果你最近在关注 3D 资产生成、本地大模型落地、边缘推理或 API 成本控制,这…

作者头像 李华
网站建设 2026/8/30 7:49:10

MediaCrawler爬虫工具完整指南:3步跑通媒体数据采集环境

MediaCrawler爬虫工具完整指南:3步跑通媒体数据采集环境 【免费下载链接】MediaCrawler 小红书笔记 | 评论爬虫、抖音视频 | 评论爬虫、快手视频 | 评论爬虫、B 站视频 | 评论爬虫、微博帖子 | 评论爬虫、百度贴吧帖子 | 百度贴吧…

作者头像 李华
网站建设 2026/8/30 7:46:38

从零实现浏览器内核:Ladybird架构解析与构建实践

浏览器内核这门“老手艺”,这几年几乎没有新玩家入场。主流产品要么基于 Chromium,要么基于 WebKit,真正从零编写、不借用现成浏览器引擎的项目屈指可数。而 Ladybird 的出现,打破了这种局面。 很多人第一次看到 LadybirdBrowser…

作者头像 李华
网站建设 2026/8/30 7:46:38

牛客B卷编程题复盘:字符串、数组、DP的破题思路与避坑指南

这几天整理求职资料,翻到了2018年牛客模考一模的B卷编程题集合。乍看是几年前的题目,但一路刷下来发现,当年考的东西到现在依然是笔试标配:字符串、数组、排序、动态规划,换一层皮反复出现。这篇文章我用自己的方式把这…

作者头像 李华