无法通过115播放strm文件

我是通过openlist挂载的115strm文件,我使用vidhub可以正常播放,但是使用Infuse播放会提示:“Failed to open URL specified in the file”。

你能复现这个问题并从你的设备提交报告(并将代码贴在这里)吗?

问题是这样的 我在自己的服务器上部署了openlist,并通过openlist挂载了自己的115网盘,并挂载了基于该115的strm,在infuse中可以正常刮削,但是无法播放,报错:failed to open url specified in the file. 在网易爆米花和vidhub中可以正常刮削和播放,将strm中的url添加到infuse中,可以正常刮削,但是无法播放,报错:Failed to open input stream in demuxing stream

有解决吗 相同的情况

我也遇到了,兄弟解决了吗

有找到解决方案么兄弟,我也遇到了

已经反馈。

技术细节:KZPCD

没有 目前在用vidhub 我看有个方案是用 jellyfin 挂 strm,然后 infuse 添加 jellyfin 不过我没试

您能否上传其中一个存在问题的strm文件,以便我们进行审查?

我在这里提供一个测试用的WebDAV,其中Test文件夹中包含视频源文件,而strm文件夹包含指向Test文件夹视频的strm文件。

谢谢。那么今天尝试播放这个具体文件时,它会失败吗?

strm可以播放,但Test文件夹中的视频文件则一直无法播放。

这个WebDAV是通过一个名为OpenList的开源软件搭建的,该软件主要是用来挂载网盘并通过302重定向获取网盘文件的直接链接。借助302重定向,观看视频时就无需消耗VPS的流量,而是直接从网盘服务器下载文件。

Please provide your email address as I need to contact you to resolve an issue.

Translated with Chat GPT, hope it’s understandable. English below.

我也遇到了同样的问题。我使用的是 .strm 文件,里面包含一个代理 URL,这个 URL 会解析到一个 m3u8 流。这个代理不会使用 302 重定向,因为 m3u8 链接可能会过期,但代理链接本身不会。

所以我怀疑 Infuse 仍然在抓取并缓存实际的流地址,而不是只读取我的 .strm 文件。

在 VidHub 里也曾经遇到过一次类似的问题,不过它可以针对单个文件 / 目录或者整个媒体库进行重新扫描,从而解决播放问题。但在 Infuse 里,你几乎无法控制重新扫描,只能操作元数据。

我已经尝试过删除元数据、把缓存模式改成 legacy、以及手动删除 Infuse Mac 应用的所有缓存文件,但都无法解决这个问题。

I am facing the same issue. I’m using .strm files that contain a proxy URL that resolves to a m3u8 stream. The proxy does NOT redirect using 302 since the m3u8 link may expire but the proxy link does not. So i’m suspecting, that Infuse is still scraping and caching the stream rather than just my .strm file. In VidHub this problem occured once. But there you can rescan files on single file/directory level or for the entire library to resolve the playback issue. But in Infuse, you have no control over rescanning. Just over metadata. I deleted metadata, set cache to legacy, tried to delete all cache files of the Infuse mac app. No chance to resolve the issue in Infuse.

好的,我现在大概明白问题出在哪里了。

如果在请求时直接返回 headers,而不等待 content-size,大多数播放器都会继续加载,直到目标文件 / 流可以播放为止。但 Infuse 会立刻停止播放并显示错误。

但反过来,如果先等待拿到 content-size 再返回 headers,那么如果获取 content-size 花的时间太长(例如由于网络连接较慢),就可能会触发超时问题(在 Infuse 和其他播放器里都有可能)。

这就有点棘手了。大家有什么建议吗?

Okay, i think i know now what’s going on. If the headers are resolved directly on request without waiting for the content-size, most players keep loading until the target file/stream is playable. But Infuse will stop playback immediately and shows the error. But then on the other hand, if i wait for the content-size and then resolve the headers, there might be a timeout issue (in Infuse and other players) if it takes too long to get the content-size (e.g. due to slow internet connection). That’s a tricky one. Any suggestions?