寻求方案,解决 WEB 端,循环播放固定的视频播放带来的大量的流量消耗问题。

2023-12-18 13:41:22 +08:00
 leyfung

寻求方案,解决 WEB 端,循环播放固定的视频播放带来的大量的流量消耗问题。

问题产生:可视化大屏中有视频播放功能,每天会一直播放,消耗大量的流量。

需求:减少流量的消耗。

目前的方案:使用浏览器缓存,设置视频缓存过期时间。

有不有更好的方案?因为浏览器有缓存大小的限制,视频循环播放一轮之后,缓存会被清理。

8741 次点击
所在节点    程序员
79 条回复
ddch1997
2023-12-18 15:23:38 +08:00
赞同 30LService Worker 这个方案,这个方案出来是解决断网的情况下依旧能访问应用以及有最近的数据,缓存视频应该不是什么问题
cuicuiv5
2023-12-18 15:26:41 +08:00
@iosyyy 反正都是全屏播放, electron 也没啥问题啊
leyfung
2023-12-18 15:33:50 +08:00
@jiangzm #36
@MENGKE 视频播放一轮大概六七百 M ,就会超过浏览器缓存最大的限制,然后就被清理了
jazzg62
2023-12-18 15:48:08 +08:00
包装成 electron ,就能解决缓存限制
paopjian
2023-12-18 15:49:09 +08:00
压缩一下视频,是不是能降低一些大小
iosyyy
2023-12-18 15:52:24 +08:00
@cuicuiv5 electron 需要用户下载客户端的..完全不一样好吧
@drymonfidelia #29 需求都变了你觉得这种事是你一句打包个客户端就行的吗
wangmn
2023-12-18 15:58:00 +08:00
如果是 公开的把视频放流媒体平台 比如抖音 b 腾讯啥的,不是公开的 就放客户本地
MENGKE
2023-12-18 16:02:25 +08:00
1. 压缩视频。
2. 切割视频。
3. 楼上给出过的 IndexedDB 等保存在本地。

这三种方法应该是相对你当前的项目改动最小的。
luxferrew
2023-12-18 16:06:51 +08:00
资源又大,又要缓存,直接 indexDB ,挺方便的。

以前有个 web 项目要加载模型文件(接近 1G 了)就这么搞的 2333 。

如果还要省就考虑压缩视频、换 GIF 图等等...看你们领导需求了...
petergui
2023-12-18 16:07:02 +08:00
rsync + local_server
gbw1992
2023-12-18 16:20:40 +08:00
我倒是觉得可以写个服务放到大屏电脑上
就定时轮训服务器视频是否更新了,更新就下载到大屏服务器上
然后大屏 web 写逻辑直接获取本地视频
leyfung
2023-12-18 16:21:46 +08:00
@wangmn 也是个办法
fengbjhqs
2023-12-18 16:27:48 +08:00
@leyfung js 可以读取本地文件,
fengbjhqs
2023-12-18 16:30:43 +08:00
这个本地跑的服务,本地启动,浏览器打开本地地址,
TsubasaHanekaw
2023-12-18 16:31:57 +08:00
那就不要用浏览器阿,最简单的 winform 套个 cerf 的壳都行
leyfung
2023-12-18 16:38:19 +08:00
感谢大家的回复,下面是可以满足我需求的方案:
方案一:使用浏览器缓存,设置视频缓存过期时间;缺点是需要配置浏览器。
方案二:使用 IndexedDB 。
方案三:单独编写后端服务,后端读取在线文件后,将文件保存至本地,由前端页面请求本地后端服务获取文件。
方案四:Service Worker 。(查了一下,好像有大小限制,大屏上的视频加起来有五六百 M )

接下来,试一下方案二。最后考虑方案三,或者就保持方案一。🤝
L1shen
2023-12-18 16:57:52 +08:00
Service Worker 的 cache 大小限制是跟着浏览器限制走的,一般来说可以很大
你可以通过 navigator.storage.estimate() 方法来查询可以用到多少,一般来说五六百 M 根本不是问题
leyfung
2023-12-18 17:27:08 +08:00
找到了一个 DEMO ,有需要的可以参考 http://t.csdnimg.cn/kJqnn 实现图片本地化 ServiceWorker + IndexedDB
xinghen57
2023-12-18 19:48:34 +08:00
本地搭个服务端可否?
视频换 vp9 等最新编码,体积能比 x.264 小一半。
54xavier
2023-12-18 20:03:34 +08:00
@drymonfidelia #16 对啊,其实我觉得这搞个 electron 客户端不就好了吗?然后就可以 download 视频到磁盘,并且可以直接 读取磁盘文件,就可以用文件的方式来缓存视频了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://yangjunhui.monster/t/1001322

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX