xStrm不完全教程

黑田奈奈子 1,004 2025-01-14

声明:本篇教程为原创,未经允许禁止转载,搬运请注明原作者。

看本教程之前,先查看上一篇教程,对某5网盘资源转302直链有一定的了解。有看不懂的名词,善用GoogleChatGPT。本教程不会对完整建立媒体库流程再进行详解。

由于目前可用工具,要么不够好用,要么高昂付费,加上某5网盘的收紧风控策略,依赖于CloudDrive2的遍历网盘容易触发429,索性自己写了个工具xStrm,用于替换掉原方案中的AutoSymlink,快速完成strm文件生成与元数据下载,构建Emby媒体库。

本项目Telegram官方群组https://t.me/xstrm_chat

原理

利用某库(消音)提供的某5网盘接口,实现快速遍历网盘文件,根据用户配置的同步任务,对比本地已有的strm文件与元数据,创建strm文件与下载元数据,供Emby进行读取。并支持接收CloudDrive2提供的webhook功能,实现网盘变动更新strm的实时监控。

部署

Docker部署

services:
  xstrm:
    image: htnanako/xstrm:latest
    container_name: xstrm
    ports:
      - "5300:5300"
    volumes:
      - /path/to/data:/data  # 配置文件目录
      - /path/to/strm:/strm    # 本地strm文件目录
    environment:
      - LICENSE_KEY=your_license_key  # 授权密钥
    restart: unless-stopped

配置相关

容器配置说明

1、环境变量

  • LICENSE_KEY: 授权码(必需)。本项目非免费开源项目,需要申请授权码才可使用,提供7天免费试用期,具体可查看Github页面。

2、目录说明

  • /data: 软件配置文件目录

    • /data/conf: 软件配置信息,web中配置的信息都保存在这里
    • /data/logs: 软件日志,软件运行过程中生成的日志保存在这里,按日期分割
  • /strm: 生成本地的strm文件保存的目录,可自定义为其他名称,可映射多个本地strm路径

3、实时监控

  • 需要开启CloudDrive2的webhook功能,下载项目仓库的webhook.toml文件,并配置其中的base_url地址为本程序地址,如http://your-ip:5300
    1.png
  • 保存到cd2配置中的config路径下,重启cd2容器即可

Web配置说明

1、任务配置
2
任务配置页,展示当前已配置的任务信息,可在此页面快速开关某个任务、开关pickcode参数、元数据下载开关、实时监控开关,未来可能会增加更多配置项。以及手动执行任务、编辑任务信息、删除任务配置。

2、添加任务
3

  • 任务名称: 起一个不重复且自己能识别任务信息的名称。
  • 源路径: 需要同步的媒体文件在网盘中的路径(注意:非CloudDrive2中的路径!非CloudDrive2中的路径!非CloudDrive2中的路径!)。
  • 目标路径: 生成strm及下载元数据文件到本地的路径,该路径应在容器的目录映射中配置好。
  • strm前缀: strm文件内容默认为文件在网盘中的绝对路径,根据302工具需要,添加http前缀或路径前缀。
  • Cron表达式: 定时任务的五位cron表达式,不懂得如何编写的请自行Google。
  • 使用Pickcode: pickcode用于唯一定位网盘中的某一文件,即使后续网盘文件被移动了位置也能定位到,开启后生成的strm内容会添加 ?pickcode=xxxx 参数。
  • 启用任务: 这个不需要赘述了吧。
  • 实时监控: 该网盘目录是否纳入实时监控范围。
  • 视频文件后缀: 指定文件后缀用于生成strm文件,特殊需求可自行添加,按照示例中给定的格式。
  • 元数据文件后缀: 指定文件后缀识别为元数据,开启元数据下载开关后会下载到本地,特殊需求可自行添加。
  • 元数据下载: 是否下载元数据到本地

最终生成的文件名及目录,根据网盘源中的目录树和文件名。文件内容为 strm前缀+网盘中文件绝对路径 ,开启pickcode开关后为 strm前缀+网盘中文件绝对路径?pickcode=xxx

3、查看日志
4
查看日志页面,该页面每3s请求一次系统日志展示,请勿长时间开启该页面,会使浏览器大量占用内存。

4、系统配置
5
系统配置页面,用于配置一些全局设置。

  • 授权信息: 可查看当前授权的信息,如邮箱等。如为试用用户,会显示到期时间。信息缓存一小时,重启会立刻更新。

  • 全局配置
    6

    • 全局strm前缀: 可提前在此配置strm前缀,添加新任务时会默认填充,最终生成文件以任务配置为准。
    • 视频文件后缀: 作用同上,最终生成文件以任务配置为准。
    • 元数据文件后缀: 作用同上,最终生成文件以任务配置为准。
    • 定时任务开关: 全局的定时任务开关,此处关闭则关闭所有定时任务。
    • 实时监控开关: 全局的实时监控开关,此处关闭则关闭所有实时监控任务。
    • 视频大小限制: 限制生成strm的视频文件大小,单位为MB,设置为0则不限制,该配置全局生效。
      修改配置之后务必点击保存,否则不生效。
  • 网盘配置
    7
    配置网盘Cookie,请按照说明获取填写并保存,此Cookie在失效时会自动更新,请勿用在其他工具中。

  • 通知配置

    • 企业微信配置
      8
      配置企业微信推送消息,支持自定义推送地址,自定义推送图片,支持随机图接口。不懂得如何配置请自行找教程。
    • Telegram配置
      9
      配置Telegram推送消息,支持自定义推送地址,自定义推送图片,支持随机图接口。支持配置代理,请务必保证软件可访问Telegram。不懂得如何配置请自行找教程。

    配置通知信息后建议重启,保证配置生效。

xStrm目前上线前期,可先在Telegram官方群组中使用机器人自助申请试用授权码。

截止本文发布时,购买永久授权价格为¥30,如需购买,可在Github页面扫码购买并备注邮箱,一般当天内处理完毕,随后可在设置页面的授权信息查看到授权情况。