在使用DPlayer库播放m3u8格式直播时发现了一个小问题,在视频容器DOM对象被销毁后m3u8的后台缓存请求并没有被停掉而是一直在后台进行缓存操作。这可能会对系统性能有一定影响,所以一定要在关闭后将缓存停掉,方法也很简单,按照官方的快速入门:

        我们在使用m3u8前必须引用hls.js对视频源进行解码,之后才能再创建dp视频播放器对象将画面解析出来,这一操作会同时创建两个关键对象:dp视频播放器对象,hls解码对象。想办法将这两个对象作为公用对象抽离出来:

        我的做法是直接将这两个对象保存到vue实例的data中方便后续调用,打开DOM前我会重新创建一次dp视频对象。接下来找到你想实现停用缓存的地方,我是在DOM容器被销毁时进行停用处理,当然如果你也想更省性能的话可以在dp暂停的生命周期里也进行停用缓存操作。

        

         完成以上操作后后台就不会再继续请求m3u8的缓存数据了 o(* ̄▽ ̄*)ブ

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐