⭐⭐⭐ Spring Boot 项目实战 ⭐⭐⭐ Spring Cloud 项目实战
《Dubbo 实现原理与源码解析 —— 精品合集》 《Netty 实现原理与源码解析 —— 精品合集》
《Spring 实现原理与源码解析 —— 精品合集》 《MyBatis 实现原理与源码解析 —— 精品合集》
《Spring MVC 实现原理与源码解析 —— 精品合集》 《数据库实体设计合集》
《Spring Boot 实现原理与源码解析 —— 精品合集》 《Java 面试题 + Java 学习指南》

摘要: 原创出处 http://www.iocoder.cn/Fight/stremio-web-browser-media-center/ 「芋道源码」欢迎转载,保留摘要,谢谢!


🙂🙂🙂关注微信公众号:【芋道源码】有福利:

  1. RocketMQ / MyCAT / Sharding-JDBC 所有源码分析文章列表
  2. RocketMQ / MyCAT / Sharding-JDBC 中文注释源码 GitHub 地址
  3. 您对于源码的疑问每条留言都将得到认真回复。甚至不知道如何读源码也可以请教噢。
  4. 新的源码解析文章实时收到通知。每周更新一篇左右。
  5. 认真的源码交流微信群。

你电脑里大概也躺着两三个播放器。PotPlayer、VLC、IINA 都很能打,可它们只管播放,不管内容从哪来。

麻烦在这儿。追剧一个网站,看频道又一个,想归拢到一处就得自己囤资源、刮削元数据、维护媒体库。Kodi 界面太老,Plex 和 Jellyfin 更适合愿意养库的人。

有个约 1.4 万 Star 的开源项目换了条路。它不管你看什么,只管这件事该怎么组织,而且整套东西都跑在浏览器里。

Stremio/stremio-web 的 GitHub 仓库页,右上角为 13.9k Star

它自己一部片都没有,却能当影视中心

stremio-web 是 Stremio 的官方网页版。Stremio 是做了多年的国外开源媒体中心,思路接近 Kodi,界面现代得多。仓库 2018 年就挂在 GitHub 上,GPL-2.0 协议开源。

来源文章中的中文 README 真实截图,保留原水印

它自己不存任何影视内容,电影、剧集、频道、播客全靠插件聚合。

Stremio Web 首页看板,官方仓库 README 原图

打开是海报墙,找片就是翻海报,发现页能按电影、剧集、频道分类或直接搜片名。

发现页,官方仓库 README 原图

点进任何一部作品,海报、简介、评分、演职员表齐全,剧集按季按集排好,元数据由插件自动抓取。

详情页,官方仓库 README 原图

浏览器打开 web.stremio.com 就能用,平板手机同样。官方自带 7 个插件,Cinemeta 管元数据,OpenSubtitles 管字幕,WatchHub 指路正版。

界面负责显示,内核在浏览器后台工作

界面是 React 应用,逻辑在 stremio-core 里。它是 Rust 写的,编译成 WebAssembly 跑在浏览器后台线程,MIT 协议。

分工很干净。界面只负责渲染状态,状态怎么变、插件怎么调都算在后台,重活不在页面上,这才是它能塞进浏览器的原因。

界面与内核的分工示意图

插件才是它的真身,也是唯一会翻车的地方

一个插件就是一台小 HTTP 服务,只回答几类 JSON 请求,它有哪些目录、条目元数据是什么、从哪儿取流、字幕在哪找。

声明一份 manifest,写几个处理函数,插件就能跑。它不在本地执行代码,官方因此敢说不会危害设备。

插件协议示意图

麻烦也在这儿。Stremio 是个空架子,能看什么全看装了哪些插件,公开目录里官方源和社区源混着,质量差得远。

Stremio Web 插件目录实拍,简体中文界面

来源文章的插件列表真实截图,仅展示作者当时的使用界面

建议保守点。只装正规来源的插件,官方公开频道加公开课、纪录片、播客够看了。论坛里流传的「全网影视」源什么都有,风险也一并装上。

另外几个细节。登录后进度、收藏、媒体库跟着账号走,换设备能续播,访客模式则不同步。

播放器那一层也没糊弄。字幕能自动匹配,也能拖本地文件调样式,快捷键做得全,空格暂停、方向键调进度,还支持 Chromecast。它本身是 PWA,能装到主屏,界面语言 50 多种。

浏览器能做的事有边界,那条边界叫 BT

浏览器支持的普通 HTTP 流可以直接播。BT 和磁力链这类源浏览器拿不到流,得同时跑 Stremio Service 这个配套程序,Windows、macOS、Linux、Docker 都能装,没连上时设置页会提示服务不可用。

不想装两个也行,Stremio 桌面版自带同一套服务,Linux 上顺手再装个 jellyfin-ffmpeg-4.4.1。

播放能力边界示意图

另一条边界更现实。内容生态偏海外,中文源少,想拿它追国产剧基本没戏。

同样一万三千多 Star,国产项目走了另一条路

GitHub 上还有个量级几乎一样的项目 LibreSpark/LibreTV,2025 年 4 月建库,AGPL-3.0,也是约 1.4 万 Star。

两种解法摆在这儿。stremio-web 做协议,自己保持空壳,插件得自己挑。LibreTV 做部署,一条命令起一个站,合规风险落到你身上。

LibreTV 的 fork 数比 Star 数还多出将近一倍,大量 fork 是拿去部署,不是参与开发。

想上手,先跑通这条最短路径

最省事的什么都不装。浏览器打开 web.stremio.com,进访客模式,插件页装两三个正规源,回首页就能刷。

想自己部署,需要 Node.js 22 以上和 pnpm 11 以上。代码在 https://github.com/Stremio/stremio-web 。

pnpm install
pnpm start

开发服务器跑在 http://localhost:8080,仓库里有现成的 Dockerfile 可以换。

什么人适合装它,什么人最好别碰

适合两类人。一类是不想装客户端、愿意在浏览器里随手看片的人,PWA 装到桌面后接近原生。另一类是想研究聚合类产品的前后端工程师,React 配 Rust 编译 WebAssembly 的组合不多见。

不适合的也很明确。想看国产剧的别指望它。不愿意花十分钟挑插件的,也会很快放弃。

回到开头。stremio-web 把媒体中心的重量从硬盘搬进浏览器,也顺手把门槛从技术搬成判断。这件事,插件市场和官方都替你决定不了。

文章目录
  1. 1. 它自己一部片都没有,却能当影视中心
  2. 2. 界面负责显示,内核在浏览器后台工作
  3. 3. 插件才是它的真身,也是唯一会翻车的地方
  4. 4. 浏览器能做的事有边界,那条边界叫 BT
  5. 5. 同样一万三千多 Star,国产项目走了另一条路
  6. 6. 想上手,先跑通这条最短路径
  7. 7. 什么人适合装它,什么人最好别碰