深色模式
模式与路径替换说明
本页只说明 Emby 助手和秒传播放的工作模式、路径替换格式和 Open API 影响。STRM 生成任务本身的配置见 STRM 工具分区;这里关注的是 Emby 播放时 NanShare 如何判断“该用哪种播放链路”。
TIP
Emby 助手和秒传播放使用同一套源文件特征来识别模式,但命中后的处理方式不同:Emby 助手直接从源账号或后端获取直链;秒传播放会先定位源文件,再按 Emby 用户配置秒传到目标账号获取直链。
工作模式总览
Emby 播放时,NanShare 会先向 Emby 查询真实源文件路径或 STRM 内容,再根据 URL 参数、路径前缀和页面开关判断工作模式。
| 模式 | 识别特征 | Emby 助手 | 秒传播放 |
|---|---|---|---|
| 本地代理 | 源路径命中“本地代理路径” | 直接转发回 Emby 原生播放 | 直接转发回 Emby 原生播放 |
| 分享模式 | HTTP URL 同时包含 share_code、receive_code、id | 用 115 分享接口获取直链 | 用目标 115 账号处理分享文件并获取直链 |
| 路径替换模式 | 本地路径,或 HTTP URL 命中路径替换规则 | 按右侧配置名或 HTTP URL 获取直链 | 按右侧源账号定位文件,再秒传到目标账号;HTTP URL 目标会直接 302 |
| Pickcode 模式 | URL 含 pickcode=,或 /d/{pickcode},或 /play115/{pickcode}/...,或 redirect115 位置参数里能识别 pickcode | 用 115 pickcode 获取直链 | 用 pickcode 秒传到目标 115 账号 |
| FileId 模式 | URL 含 fileId=,或 redirect115 位置参数里只有 fileId | 先把 fileId 转 pickcode,再获取直链 | 先把 fileId 转 pickcode,再秒传到目标 115 账号 |
| 123 STRM 模式 | URL 含 redirect123,并带 size、md5、s3 key flag | 用页面选择的 123 配置获取直链 | 用目标 123 账号获取直链 |
| ed2k 模式 | URL 含 ed2k_strm,并带 hash、size 参数 | 用 115 配置离线/取直链 | 用 115 目标账号离线,目录复用目标账号复制/秒传目录 |
| HTTP 回退 | HTTP/HTTPS URL 未命中以上模式 | 可选,访问后端获取直链,固定缓存 600 秒 | 不支持 |
执行顺序
后端会先处理本地代理,因为本地代理命中后会直接回到 Emby 原生链路,不再尝试分享、路径或其他模式。
Emby 助手普通播放的主要顺序:
text
本地代理 -> 分享 -> 路径替换 -> Pickcode -> FileId -> 123 STRM -> ed2k -> HTTP 回退秒传播放的主要顺序:
text
本地代理 -> 分享 -> Pickcode -> FileId -> 路径替换 -> 123 STRM -> ed2k差异说明:
- Emby 助手中,路径替换会早于 Pickcode/FileId 执行。
- 秒传播放中,Pickcode/FileId 会早于路径替换执行。
- 如果一个 HTTP URL 同时像普通 URL 又命中路径替换规则,会按路径替换处理。
- 秒传播放失败后不会回退到 Emby 助手普通直链,会直接返回错误。
分享模式
分享模式识别 115 分享 STRM 里的三个参数:
text
share_code
receive_code
id可识别格式:
text
http://你的IP:8115/api/?share_code=SHARE_CODE&receive_code=RECEIVE_CODE&id=123456
http://你的IP:8115/api/?share_code=SHARE_CODE&receive_code=RECEIVE_CODE&id=123456&name=Movie.mkv
https://你的域名/api/?share_code=abc123&receive_code=abcd&id=987654&name=Episode.S01E01.mkvEmby 助手行为:
- 使用页面里“分享模式”选择的 115 Cookie 配置。
- 支持同播复制,前提是对应 115 配置开启同播复制。
- 开启 115 Open API 不会影响分享模式,因为分享模式有独立 115 Cookie 账号选择。
秒传播放行为:
- 分享模式需要 115 Cookie 能力。
- 目标 115 账号需要开启秒传。
- 开启 115 Open API 后分享模式会被自动禁用,因为 115 Open API 不支持分享下载接口。
常见用途:
text
115 分享 STRM 生成 -> Emby 扫库 -> Emby 助手分享模式播放
订阅分享追更 -> 生成分享 STRM -> 秒传播放分享模式处理
转存再分享 -> 使用自己的分享链接 -> 分享模式播放路径替换模式
路径替换用于把 Emby 传来的源路径前缀映射到 NanShare 配置名或 HTTP URL。
格式必须是一行一条:
text
路径前缀 => 配置名称 或 HTTP URL页面会把每行保存为独立规则。建议 => 前后保留空格,方便阅读和排查。
Emby 助手路径替换
右侧可以填写:
| 右侧目标 | 行为 | 同播复制 |
|---|---|---|
| 115 配置名 | 剥离左侧路径前缀,剩余部分作为 115 网盘路径获取直链 | 支持 |
| 123 配置名 | 剥离左侧路径前缀,剩余部分作为 123 网盘路径获取直链 | 不走 115 同播复制 |
| 夸克配置名 | 剥离路径前缀,通过夸克接口获取直链 | 不支持 |
| 天翼配置名 | 剥离路径前缀,通过天翼接口获取直链 | 不支持 |
| HTTP/HTTPS URL | 把左侧前缀替换成右侧 URL,直接 302 到拼接后的地址 | 不支持,固定缓存 600 秒 |
115 示例:
text
/CloudNAS/CloudDrive/115open => 115一号
/mnt/cd2/115 => 115主账号
/volume2/media/115 => 115备用账号
G:/CloudDrive/115 => 115一号转换效果:
text
规则:/CloudNAS/CloudDrive/115open => 115一号
Emby 源文件:/CloudNAS/CloudDrive/115open/电影/test.mkv
网盘路径:/电影/test.mkv123 示例:
text
/CloudNAS/CloudDrive/123云盘 => 123二号
/mnt/cd2/123 => 123主账号
H:/123pan => 123家庭号转换效果:
text
规则:/mnt/cd2/123 => 123主账号
Emby 源文件:/mnt/cd2/123/剧集/示例剧/Season 1/E01.mkv
网盘路径:/剧集/示例剧/Season 1/E01.mkv夸克、天翼示例:
text
/CloudNAS/CloudDrive/夸克网盘 => 夸克一号
/CloudNAS/CloudDrive/天翼云盘 => 天翼一号
/mnt/cd2/quark => 夸克影视
/mnt/cd2/cloud189 => 天翼影视HTTP URL 目标示例:
text
/volume2/cloudnas/天翼云盘 => http://172.17.0.1:8515/d
/media/openlist => http://openlist:5244/d/媒体库
http://10.0.0.194:5678/d => http://10.0.0.194:5244/d/小雅网盘
https://alist.example.com/d/115 => http://openlist:5244/d/115转换效果:
text
规则:/volume2/cloudnas/天翼云盘 => http://172.17.0.1:8515/d
Emby 源文件:/volume2/cloudnas/天翼云盘/movies/test.mkv
重定向到:http://172.17.0.1:8515/d/movies/test.mkv
规则:http://10.0.0.194:5678/d => http://10.0.0.194:5244/d/小雅网盘
Emby 源文件:http://10.0.0.194:5678/d/movies/test.mkv
重定向到:http://10.0.0.194:5244/d/小雅网盘/movies/test.mkv秒传播放路径替换
秒传播放的路径替换右侧含义和 Emby 助手不同:右侧填写的是源账号配置名,不是最终播放账号。命中后,NanShare 使用该源账号获取文件信息,再按当前 Emby 用户配置秒传到目标账号。
右侧可以填写:
| 右侧目标 | 行为 |
|---|---|
| 115 配置名 | 源账号为 115,获取源文件 pickcode 后秒传到目标 115 账号 |
| 123 配置名 | 源账号为 123,获取文件信息后使用目标 123 账号获取直链 |
| HTTP/HTTPS URL | 直接把路径前缀替换成 HTTP URL 并 302,跳过秒传逻辑 |
不支持作为秒传源账号目标:
text
夸克配置名
天翼配置名115 源账号示例:
text
/CloudNAS/CloudDrive/115资源 => 115源账号A
/mnt/cd2/115share => 115源账号B
G:/115资源 => 115源账号A
https://alist.example.com/d/115 => 115源账号A123 源账号示例:
text
/CloudNAS/CloudDrive/123云盘 => 123源账号
/mnt/cd2/123资源 => 123源账号
H:/123资源 => 123源账号HTTP URL 目标示例:
text
http://10.0.0.194:5678/d => http://10.0.0.194:5244/d/小雅网盘
/mnt/direct => http://direct.example.com/d秒传路径示例:
text
规则:/CloudNAS/CloudDrive/115资源 => 115源账号A
Emby 源文件:/CloudNAS/CloudDrive/115资源/电影/test.mkv
转换后源路径:/电影/test.mkv
处理方式:115源账号A 获取文件信息 -> 当前 Emby 用户绑定的目标账号秒传 -> 获取目标账号直链路径替换匹配细节
匹配时会做这些处理:
- Windows 反斜杠会统一成
/,所以规则建议统一写正斜杠。 - HTTP/HTTPS 源路径会尝试 URL 解码后再匹配。
- 左侧前缀命中后,NanShare 会剥离左侧前缀,把剩余部分作为网盘路径。
- 如果右侧是 HTTP/HTTPS URL,不会走网盘接口,而是拼接剩余路径后直接重定向。
- 如果多个规则都可能命中,建议把更长、更具体的规则写在前面,便于人工排查。
多规则示例:
text
/CloudNAS/CloudDrive/115open/电影/4K => 115-4K
/CloudNAS/CloudDrive/115open/电影 => 115电影
/CloudNAS/CloudDrive/115open/剧集 => 115剧集
/CloudNAS/CloudDrive/115open => 115默认推荐这样写的原因:
text
更具体路径:/CloudNAS/CloudDrive/115open/电影/4K
更宽泛路径:/CloudNAS/CloudDrive/115open宽泛规则放在前面时,日志里容易看到命中了默认账号,而不是你原本希望的 4K 专用账号。
Pickcode 模式
Pickcode 模式用于 115 文件。识别方式来自 NanShare 后端和内置 Wiki,支持多种格式。
可识别格式:
text
http://host:8115/api/?redirect115&abchrb6gnrw0hhh80&Movie.mkv
http://host:8115/api/?redirect115&abchrb6gnrw0hhh80&3312677223653037366&a94a8fef8c17b2d69d61f7c5b4b3e3a2c1b2a3c4&Movie.mkv
http://host:8115/api/?pickcode=abchrb6gnrw0hhh80&name=Movie.mkv
http://host:8115/d/abchrb6gnrw0hhh80?/Movie.mkv
http://host:8115/play115/abchrb6gnrw0hhh80/3312677223653037366/a94a8fef8c17b2d69d61f7c5b4b3e3a2c1b2a3c4/1073741824/Movie.mp4Emby 助手行为:
- 使用 Pickcode 模式里选择的 115 配置。
- 可配合 Cookie 或 115 Open API。
- 支持同播复制,前提是对应 115 配置开启同播复制。
秒传播放行为:
- 通过 pickcode 定位 115 源文件。
- 如果配置了源账号,用源账号读取;没有源账号时可用目标账号自身处理。
- 目标 115 账号需要开启秒传。
FileId 模式
FileId 模式用于只有 115 文件数字 ID 的链接。NanShare 会先把 fileId 转成 pickcode,再继续处理。
可识别格式:
text
http://host:8115/api/?redirect115&3312677223653037366&Movie.mkv
http://host:8115/shareVideoPlayUrl?fileId=3312677223653037366&account=115一号
http://host:8115/videoPlayUrl?fileId=3312677223653037366&account=115一号
fileId=3312677223653037366注意:
- 如果同一条
redirect115链接里同时能识别 pickcode 和 fileId,优先走 Pickcode 模式。 - FileId 必须能通过所选 115 配置查询到对应 pickcode。
- Emby 助手和秒传播放都支持 Cookie / Open API 处理 FileId。
123 STRM 模式
123 STRM 模式识别 redirect123。
位置参数格式:
text
http://host:8115/api/?redirect123&1073741824&abc123md5hash&s3keyflag&Movie.mkv
http://host:8115/api/?redirect123&1073741824&abc123md5hash&s3keyflag参数顺序:
text
?redirect123&<size>&<md5>&<s3_key_flag>[&name]旧命名参数格式也可按 123 解析器兼容:
text
http://host:8115/api/?redirect123&size=1073741824&md5=abc123md5hash&s3_key_flag=s3keyflag&name=Movie.mkvEmby 助手行为:
- 需要开启
123 STRM 模式。 - 需要选择一个 123 助手配置。
- 不使用 115 同播复制。
秒传播放行为:
- 需要开启
123 STRM 模式。 - 使用当前 Emby 用户绑定的目标 123 账号获取直链。
- 目标 123 配置需要 Token 可用。
ed2k 模式
ed2k 模式识别工具箱 ed2k STRM 生成的 URL。
可识别格式:
text
http://host:8115/api/ed2k_strm?hash=ABC123&size=123456&name=Movie.mkv
http://host:8115/api/ed2k_strm?hash=ABC123&size=123456Emby 助手行为:
- 需要开启
ed2k 模式。 - 需要选择 115 配置。
- 可配合 Cookie 或 115 Open API。
- 可参与同播复制,前提是 115 配置开启同播复制。
秒传播放行为:
- 需要开启
ed2k 模式。 - 使用 115 目标账号离线获取直链。
- 离线目录复用目标账号复制/秒传目录。
HTTP 回退
HTTP 回退只属于 Emby 助手。源文件是 HTTP/HTTPS,并且没有命中分享、路径替换、Pickcode、FileId、123 STRM、ed2k 时,Emby 助手可以尝试访问后端获取直链。
示例:
text
http://some-service/path/to/file.mkv
https://download.example.com/media/Movie.mkv特点:
- 只在 Emby 助手中可用。
- 秒传播放不支持 HTTP 回退。
- 固定缓存 600 秒。
- 不支持同播复制。
如果你要让 HTTP URL 先按路径替换处理,应在路径替换中写 URL 前缀规则:
text
https://alist.example.com/d/115 => 115主账号
https://openlist.example.com/d/media => http://openlist:5244/d/media本地代理
本地代理不是 STRM 参数模式,而是路径白名单。源文件命中本地代理路径时,NanShare 直接把请求转发给 Emby 原生处理。
Emby 助手和秒传播放页面都有本地代理开关。匹配优先级最高:
text
本地代理 -> 其他所有模式适合场景:
- 同一个 Emby 媒体库里既有本地硬盘文件,又有网盘 STRM。
- 本地文件本来就能由 Emby 直接播放,不想经过 302 或秒传。
- 某些目录需要跳过预缓存和网盘解析。
配置示例:
text
/mnt/media/local
/volume1/video/local
D:/Movies/Local匹配示例:
text
本地代理路径:/mnt/media/local
Emby 源文件:/mnt/media/local/Movie.mkv
结果:直接回到 Emby 原生播放Open API 影响
Emby 助手和秒传播放都支持 115 Open API。开启后,115 获取直链、同播复制、秒传、Pickcode、FileId、115 路径模式会走 Open Token。
| 场景 | Cookie 模式 | Open API 模式 |
|---|---|---|
| Emby 助手分享模式 | 可用,使用分享模式独立选择的 115 Cookie 账号 | 仍可用,因为分享模式独立使用 Cookie 账号 |
| Emby 助手路径 / Pickcode / FileId | 可用 | 可用,需要对应 115 配置有 Open Token |
| Emby 助手同播复制 | 可用 | 可用,需要对应 115 配置开启同播复制 |
| 秒传播放路径 / Pickcode / FileId | 可用 | 可用,源账号和目标账号都需要 Open Token |
| 秒传播放分享模式 | 可用,需要 Cookie | 不可用,会自动禁用 |
| 秒传播放 123 模式 | 不受 115 Open API 影响 | 不受 115 Open API 影响 |
推荐:
text
Emby 助手:可以开启 115 Open API;分享模式单独选 Cookie 账号。
秒传播放只用路径/Pickcode/FileId:可以开启 115 Open API。
秒传播放需要分享模式:不要开启 115 Open API。
115 Open 模式下路径替换右侧要写 115 助手里的 Open 配置名称。配置示例
Emby 助手混合播放
text
工作模式:
分享模式:开启,115 配置 = 115分享号
路径替换模式:开启
Pickcode 模式:开启,115 配置 = 115open号
FileId 模式:开启,115 配置 = 115open号
123 STRM 模式:开启,123 配置 = 123主号
ed2k 模式:开启,115 配置 = 115open号
HTTP 回退:按需开启
路径替换:
/mnt/cd2/115 => 115open号
/mnt/cd2/123 => 123主号
/mnt/cd2/quark => 夸克影视
/mnt/cd2/cloud189 => 天翼影视
https://alist.example.com/d/115 => 115open号
http://10.0.0.194:5678/d => http://10.0.0.194:5244/d/小雅网盘秒传播放按用户分配
text
工作模式:
分享模式:关闭或仅 Cookie 模式使用
路径替换模式:开启
Pickcode 模式:开启
FileId 模式:开启
123 STRM 模式:开启
ed2k 模式:开启
路径替换:
/mnt/cd2/115资源 => 115源账号A
/mnt/cd2/115动画 => 115源账号B
/mnt/cd2/123资源 => 123源账号
https://alist.example.com/d/115 => 115源账号A
Emby 用户账号:
用户A -> 115目标账号A / 123目标账号A
用户B -> 115目标账号B / 123目标账号B只把 URL 转到自己的后端
text
工作模式:
路径替换模式:开启
路径替换:
https://old.example.com/d => https://new.example.com/d
/mnt/openlist => http://openlist:5244/d/media这种写法不会走网盘账号,也不会秒传,只是把前缀替换后 302 到目标 URL。
常见问题
路径替换不命中
检查:
- Emby 实际源文件路径是否和左侧前缀完全一致。
- Windows 路径是否统一写成
/。 - HTTP URL 是否有 URL 编码,必要时把解码后的中文路径写进规则。
=>是否写错,建议使用路径前缀 => 目标。- 右侧配置名称是否和 115 / 123 / 夸克 / 天翼助手里的名称完全一致。
- 更宽泛的规则是否写在更具体规则前面。
秒传播放路径模式找不到源文件
检查:
- 右侧是否填写源账号配置名,而不是目标账号配置名。
- 当前 Emby 用户是否配置了目标账号。
- 目标 115 账号是否开启秒传。
- 115 Open API 模式下,源账号和目标账号是否都有 Open Token。
- 转换后的网盘路径是否真实存在,例如
/电影/test.mkv。
分享模式在秒传播放里失效
如果秒传播放开启了 115 Open API,分享模式会被禁用。需要分享模式时,使用 Cookie 模式,并确认目标 115 账号开启秒传。
123 STRM 播放失败
检查:
- 是否开启 123 STRM 模式。
- 123 助手 Token 是否有效。
- URL 是否包含 size、md5、s3 key flag。
- 秒传播放中当前用户是否配置了目标 123 账号。
HTTP URL 被当成路径替换
只要 HTTP URL 命中了路径替换左侧前缀,就会按路径替换处理。如果你想让它走 HTTP 回退,请删除对应路径替换规则,或关闭路径替换模式。