创建与管理媒体库
媒体库是服务器上的一组文件夹,Kryspal Media 会扫描它们,并显示为电影和剧集。这一页说明如何添加媒体库、扫描如何运作,以及文件丢失时怎么办。
媒体库类型#
| 类型 | 适合放 | 说明 |
|---|---|---|
| 电影 | 电影、演唱会、纪录片 | 每部影片是一个独立条目 |
| 剧集 | 电视剧、动画、综艺 | 剧集 → 季 → 单集 |
建议电影与剧集分开建库:识别更准,也不会因为某个电影文件名长得像单集而被当成剧集。
如果电影库里放了像剧集的文件夹,管理后台的总览会出一条提示,因为这样每一集都会变成一部单独的电影。按提示里的快捷入口新增剧集库,再把这些文件夹放进去。
添加媒体库#
- 在管理后台打开「媒体库」,选择「新增媒体库」。
- 选择类型、取名,并在「文件夹」里添加一个或多个文件夹。请填服务器上的绝对路径。每个文件夹都必须在服务器的媒体文件夹(
MEDIA_ROOT,标准 compose 文件里是/media)之内,不能在服务器自己的数据或缓存文件夹里,否则服务器会拒绝。一个媒体库可以有多个文件夹,扫描时会合并为一个媒体库。 - 在「元数据」分页选择刮削语言和要使用的「提供者」(见元数据与 NFO)。新媒体库会默认选中已安装并配置好的元数据插件;已安装但还没配置的显示「待配置」,旁边有「去配置」按钮。
- 选择「创建媒体库」。服务器会自己开始扫描新媒体库,不需要再手动开始。条目会随着扫描逐步出现。
媒体放在 /media 以外的位置#
媒体库的文件夹必须在媒体根目录 MEDIA_ROOT(默认 /media)之内。服务器会在这里删除文件、写回 NFO、下载字幕,所以根目录以外的路径会被拒绝。
MEDIA_ROOT 可以列出多个根目录,用冒号分隔。把每个文件夹挂载进容器,再加到列表里:
environment:
- MEDIA_ROOT=/media:/mnt/movies:/data/tv
volumes:
- /volume1/movies:/mnt/movies
- /volume2/tv:/data/tv
文件夹浏览器会以这几个路径为起点。
适合想沿用原来容器路径的人,例如从 Emby、Jellyfin 搬过来。其他情况用 install.sh 的多个 --media 就够了。不要把 MEDIA_ROOT 设成 /,也不要设成包含服务器数据文件夹的目录,服务器都会拒绝。
存储位置:本机或网盘#
在媒体库设置里,「存储位置」说明文件在本机磁盘还是在网盘。由你来选,服务器不会猜。它只给下面那些设置定出推荐值,每一项仍然可以单独修改(修改后会显示「自定义」,并有恢复推荐值的按钮)。
| 设置 | 本机 | 网盘 |
|---|---|---|
| 实时监控 | 开 | 关 |
| 读取媒体信息 | 扫描时 | 在后台 |
| 同时读取文件数 | 4 | 2 |
| 为内嵌字幕整个读取文件 | 最大 8 GB | 不读取 |
| 片头片尾声纹检测 | 开 | 关 |
| 外挂音轨 | 开 | 关 |
修改已有媒体库的存储位置时,推荐值同样会套用:仍然跟随推荐值的设置会跟着变,实时监控和外挂音轨只有在你没自己设置过时才会变,选项下方的提示会列出实际变动的项目。媒体库列表和媒体库页面会在每个媒体库上显示「本机」或「网盘」。
大媒体库的第一次扫描需要一段时间。扫描期间,已入库的内容可以先浏览与播放。
文件夹可以是本机磁盘、网络挂载(NFS、SMB)、网盘挂载,以及存放 .strm 文件的文件夹。媒体库默认只读:扫描、识别、刮削都不会移动、改名或删除你的文件。例外是你在媒体库上自己打开的两个选项(默认都关闭):「写回 NFO 与图片」(见元数据与 NFO),会写入媒体库;「允许删除」,让你能在管理后台删除媒体文件。
扫描什么#
扫描器认得常见的视频格式(mkv、mp4、avi、ts、m2ts、iso、strm 等),同时会找出每部影片旁边的 NFO、图片、外挂字幕与外挂音轨。
- 太小的文件和样本片(名称含 sample)会被略过。
- 隐藏文件夹与系统文件夹(例如 NAS 上的
@eaDir、#recycle、#snapshot)会被略过。 - 指向媒体库文件夹以外位置的符号链接不会被扫描。如果你用链接整理媒体库,请让链接的目标也位于某个媒体库文件夹之内。
排除文件#
在媒体库设置的「高级」分页找到「排除」:
- 扩展名:例如
.nfo。 - 文件名关键字:比对文件名里的完整单词,不分大小写。只看文件名,不看文件夹名。
- 小于指定大小的视频:用来滤掉片头广告和小预览文件。不适用于 STRM 文件。
修改规则后,请执行一次「完整扫描」,规则才会套用到已入库的文件。
扫描方式#
| 方式 | 什么时候 | 行为 |
|---|---|---|
| 快速扫描 | 排程,或手动 | 只重看有变动的文件夹,媒体库再大也快 |
| 完整扫描 | 手动 | 逐个文件比对,能抓到文件夹时间没变的修改,例如原地覆盖的 NFO 或图片 |
| 实时监控 | 文件一变动就触发 | 见下文 |
| 扫描单个文件夹 | 手动 | 只处理那个文件夹,适合刚放进新片的时候 |
在「媒体库」里该媒体库的页面可以开始快速扫描或完整扫描,进度会显示在那里、列表里该媒体库的卡片上和「任务中心」。正在扫描的媒体库会显示已处理的文件夹数,正在刮削的会显示还在排队的条目数。自动扫描的排程在「任务中心」→「排程」,可以修改间隔。软件升级后如果识别规则有改进,会自动做一次完整扫描,让旧内容用新规则重新识别,你不需要处理。
扫描只读取文件,不会重新查找详情。要重新刮削整个媒体库,请用媒体库页的「刷新元数据」:它会重新搜索还没配对的条目,并按已有的配对更新已配对的条目。如果这个媒体库已经在刮削,再按时会先请你确认,因为排队中的条目会被重新排入。
实时监控#
默认开启。文件夹里的文件新增、改名或删除后,等这批操作停下来约 10 秒,就会自动重新扫描该文件夹。可以在「实时监控」对单个媒体库关闭;重新打开时,会补扫一次关闭期间的变动。
限制:
- NFS、SMB、FUSE 与多数网盘挂载不会发出文件变动通知,这类媒体库只靠排程与手动扫描。这是文件系统本身的限制,不是设置错误。
- 监控的文件夹太多时可能达到操作系统上限(Linux 的
fs.inotify.max_user_watches),管理后台会提示。调高该系统参数并重启服务器即可;在此之前仍会按排程扫描更新。
文件不见了怎么办#
磁盘没有挂上,或网络硬盘断线时,文件会暂时消失。「高级」分页的「丢失文件」有两道保护:
- 宽限期(小时):文件丢失超过这段时间,才会移除条目。期间文件恢复,观看记录与元数据都会保留。
- 大量丢失阈值(%):一次扫描将标记为丢失的条目超过此比例时,会暂停并等你在「任务中心」确认。服务器会认为是挂载问题,而不是你删光了媒体库。设为 100% 即关闭保护。
你有意删除的文件会从媒体库移除,观看记录也随之清掉。
如果只是文件被替换(例如单集改了文件名,或电影换了新文件),新条目会接手丢失条目的观看记录,前提是在同一个媒体库里,并且是同一部剧的同一集,或 TMDB、IMDb 编号相同的同一部电影。
删除媒体库#
在媒体库设置的「危险操作」里选择「删除媒体库」,会删除该媒体库的所有条目与观看记录。磁盘上的文件不受影响。此操作无法恢复。