最近尝试开发了一个视频资源中转站,方便自己看视频,写一个基本的文章记录一下开发过程。

使用场景

我通常会从pt站上下载一些视频资源,存在实验室的超大硬盘中,比如某一个季度的新番全集。但我往往不会一口气在同一个终端上看完。我以往的解决方案是传到我校网盘上,然后再在想用的终端上下载。这样的好处是连接校园网时网速较快,并且节约流量钱。但缺点就是不在校园网里的时候全部下完非常慢,让人无法忍受。

于此同时,由于我平常会看一些线上的live,并会把视频抓下来存一份在服务器上,一个live视频会持续3-4小时,大小往往会超过10G,如果我每次都需要下载完才能看那体验会非常差。

所以一个能跨设备看视频的中转服务就非常关键了。Pulihub的目标就是把个人的不同源的视频资源整合在一起,能够跨设备实时观看。

进度

其实与bhpan相关的协议之前有同学已经写好了。本着快速原型的目标,我就在他的基础上改了一下,弄了一个支持双源(文件源和bhpan源)的demo服务。并且把后端用node分离了出来,加了一个可以从前端添加源的按钮。

TODO

目前大概计划是进一步优化体验。

  • 用mongodb维护视频信息。
  • 用react重构前端,在前端上提供编辑功能。
  • 文件夹:按作品分类视频。
  • 支持更多种类的源,支持更多格式的视频播放。