如何将本地讲座/课程视频(没有 TMDB/TVDB 收录的)在 Plex 中整理成结构清晰的电视节目,并通过 Plex API 写入自定义描述文字。
示例是 Jonathan Biss 的 Exploring Beethoven’s Piano Sonatas——Curtis 音乐学院与 Coursera 合作的 5 部分课程,存储在 Synology NAS 上。
问题 # Plex 默认的 metadata 爬虫依赖 TMDB 或 TVDB。没有收录的本地讲座视频要么显示成一堆无封面的乱列表,要么被错误匹配到不相关的节目。
解决方案:将课程当作**电视节目(TV Show)**处理,使用 Plex 的 Personal Media Shows 代理,再通过 Plex API 推送自定义 metadata。
第一步:按 Season/Episode 结构整理文件 # Plex 的 TV Show 扫描器要求文件名包含 SxxExx:
将近十年积累的个人文档从 Google Drive 文件夹体系迁移到 Paperless-ngx 的完整记录。 涵盖分类体系设计、从 Google Takeout 批量导入、ML 分类器训练,以及日常收件箱工作流。
为什么要迁移 # 过去多年,我的"文档管理"是一棵手工维护的 Google Drive 文件夹树:
1 2 3 4 5 6 7 8 9 10 10 - 文书材料/ 10 - 证件材料/身份证件/ 30 - 移民文档/ 30 - Tax Filing/ 40 - Finance/ 50 - 车辆注册/ 60 - 住房买房/ 80 - Medical/ 20 - 家装住房信息/ 80 - 旅行计划/ 归档时还算顺手,但检索很痛苦。想找"2022 年的保险表格",要翻六个文件夹,还得猜当时的命名。 Paperless-ngx 提供全文检索、OCR、以及会从你自己的标注中学习的 ML 分类器—— 对于横跨移民手续、税务申报、房产合同、医疗记录的文档库来说,这是本质性的提升。
在 Synology NAS 上配置 AirPrint 的操作手册,让 iOS/macOS 设备可以通过局域网打印到 USB 或网络打印机。使用 Docker CUPS 容器和 Synology 内置的 avahi(mDNS)守护进程实现服务发现。
架构 # 1 2 3 4 5 6 7 8 9 10 11 iPhone │ mDNS 发现 (_ipp._tcp) ▼ Synology avahi-daemon(eth4,端口 5353) │ 从 /etc/avahi/services/ 读取服务文件 │ CUPS Docker 容器(host 网络模式,端口 631) │ 生成 /etc/avahi/services/AirPrint-*.service │ 将打印任务代理到打印机 ▼ 打印机(如 socket://10.0.20.50:9100) 关键设计决策:
将家庭相册从 Synology Photos 迁移到自托管 Immich 实例的个人操作手册。 涵盖批量上传、Google Takeout 导入,以及通过 Synology PostgreSQL 数据库重建相册。
环境说明 # 来源:运行 Synology Photos 的 Synology NAS(多用户) 目标:同一 NAS 上自托管的 Immich 上传工具:immich-go v0.31+ 客户端:Windows 上的 WSL2,SSH 访问 NAS 相册脚本:自定义 Python(migrate_albums.py),使用 Immich REST API 第一阶段:照片上传 # 策略 # 每位用户有两个来源: