全部文章
工具教程2025/11/20

STRM 接入 Emby:不下载视频也能建媒体库

STRM 让 Emby 只顾目录不存视频。这篇讲清它到底是什么、有哪两种生成方式、路径和编码最容易错在哪,以及怎么验证真的生效。

媒体库的痛点是:想看网盘里的片子,又不愿意把它们全下载到本地。直接挂载能让 Emby 读到文件,但扫描大库时反复读目录会非常慢。

STRM 解决的就是这一层:让 Emby 只顾目录,视频在播放时才去取。

STRM 到底是什么

一个 .strm 文件就是一个文本文件,内容是媒体文件的 URL,通常只有一行:

http://你的服务器:5244/d/aliyun/电影/示例影片.mkv

Emby 扫描到这个文件时,会把它当成一个视频条目入库,抓海报、读标题、生成条目。播放时,它按里面的地址去取流。

所以本地硬盘上真正占空间的只有:STRM 文件(几 KB)+ 刮削出来的元数据(海报、nfo)。一个几千部影片的库,可能只占几百 MB。

先想清楚:你只要入库,还是要直链播放

这一步决定后面怎么做,很多人跳过它,结果配完发现播放还是卡。

只要入库(简单版) Emby 读取网盘文件靠挂载(rclone / CloudDrive2),STRM 只是让扫描变快。播放时数据仍然经过你的服务器。

要直链播放(完整版) 需要额外一层反向代理,把播放地址改写成网盘直链,让客户端直接去网盘取流。这部分单独写在302 反代教程里。

下面的步骤先做到「能入库、能播放」,最后再说明怎么升级到直链。

关键前提:地址必须是 Emby 能访问的

STRM 里的 URL 是由服务器解析的,所以:

  • http://127.0.0.1:5244/... ,如果 Emby 跑在容器里,这个地址指向容器自己
  • http://localhost:5244/... ,同上
  • http://192.168.1.10:5244/... ,局域网 IP
  • http://你的域名/... ,有公网域名时

判断方法:进 Emby 容器,执行 curl -I <你要写进 STRM 的那个地址>,能返回 200 或 302 就对了。

生成 STRM 的两种方式

方式一:工具直接生成(推荐)

不用先挂载,工具通过网盘的 API 或 WebDAV 读到目录结构,直接在本地写 STRM 文件。

常见选择:

  • LitePan:多网盘聚合挂载 + STRM 生成 + 媒体整理,面向 NAS 场景
  • TgtoDrive:支持 115/123/光鸭,转存 + 整理 + STRM + 302 一条链
  • MoviePilot:媒体库自动化,插件生态较全

这类工具通常要填三个东西:

配置说明
网盘凭据和 OpenList 一样,按平台要求提供
生成目录本地存放 .strm 的路径
基础地址写进 STRM 的前缀 URL,就是上面说的"Emby 能访问的地址"

生成逻辑一般是定时扫描(Cron)或监听变更,增量生成。

方式二:先挂载再生成

先按OpenList 挂载教程把网盘挂到本地,再用工具扫描挂载目录批量生成 STRM。

优点是链路直观;缺点是扫描大库慢,而且多了一层挂载依赖。

加进 Emby

  1. Emby 后台 → 资料库 → 新增媒体库
  2. 内容类型选「电影」或「电视节目」
  3. 文件夹指向 STRM 所在目录(注意:是宿主机路径,且要映射进 Emby 容器)
  4. 保存后触发扫描

扫描完成后,条目会出现在库里。如果目录是空的,检查:

  • 路径有没有正确映射进容器
  • STRM 文件后缀是不是 .strm(不是 .strm.txt)
  • 文件权限 Emby 能不能读

验证真的生效

三个层次的验证,从浅到深:

一、文件层

ls /path/to/strm | head
cat /path/to/strm/示例影片.strm

能看到 URL,且 URL 在 Emby 容器里能访问。

二、媒体库层 Emby 里能看到条目、有海报、有标题。这说明刮削成功,但不代表播放能走通。

三、播放层 实际点播一次,同时观察服务器网络:

  • 如果服务器上行有明显流量,说明在走中转(挂载模式)
  • 如果服务器几乎没流量、但客户端在下载,说明走了直链(302 模式)

这一步是判断「有没有真的配好」的唯一标准。

常见坑

中文文件名乱码或 404。 URL 需要做编码。部分工具提供「URL 编码」开关,打开它。

STRM 生成成功但 Emby 不认。 多半是基础地址不可达。按上面的方法在 Emby 容器里 curl 一次。

能播但一直转圈。 大概率是网盘限速或服务器带宽不够。这时才需要上 302 反代。

片头片尾识别、弹幕、字幕缺失。 STRM 是虚拟文件,元数据不如本地文件完整。需要额外插件补全(如 MediaInfoKeeper 类工具)。

过一段时间全失效了。 STRM 里的地址如果带时效签名,会过期。解决办法是让工具定期重新生成,或使用不带时效的固定路径 + 302 解析。

和 302 的关系

STRM 解决「入库」,302 解决「播放不占带宽」。两者是叠加关系:

网盘 → STRM(指针)→ Emby 入库 → 播放 → 302 反代 → 客户端直连网盘

只做 STRM,你会得到一个漂亮的媒体库,但播放仍然经过服务器。加上 302,才是完整的家庭影院方案。

如果网盘本身支持直链、你也愿意折腾,可以直接看302 反代教程。不想折腾的话,适合做影视媒体库的网盘里列了几个直链生态更成熟的平台,能省不少事。

相关阅读:STRM 是什么、302 重定向是什么、网盘挂载工具专题。