本文最后更新于:2025年2月18日 下午
问题描述
1 2 3 4 [FlvPlayer ] > Maximum buffering duration exceeded, suspend transmuxing task [FlvPlayer ] > Continue loading from paused position flv.js :10093 [FLVDemuxer ] > Unsupported tag type 70 , skipped flv.js :10093 [FLVDemuxer ] > Unsupported tag type 193 , skipped
原因是flv.js
缓冲直播视频流超过最大值后会停止继续缓冲,等到播放一定时长后,会自动从暂停点恢复。但是,这时出现不支持的标签类型并跳过的问题。
问题解决
若出现此问题,但是视频播放不受影响,可忽略此问题。
我这边是出现此问题后,视频还没放完缓冲的数据,等播放到缓冲暂停点时,播放器就开始一直加载,而且无法播放了…
我去flv.js
的github
中的issue
中看了,有提到相关的问题,但只是提了缓冲到最大会暂停缓冲的事,而且目前没有答复。
解决方法:
这算是一个异常点,可以通过捕获异常来解决。
示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 const flv = flvjs.createPlayer ({ type : 'flv' , url }); flv.attachMediaElement (video); art.flv = flv; flv.load (); flv.on (flvjs.Events .ERROR , (errorType, details ) => { console .error (`Error: ${errorType} , Details: ${details} ` ); switch (errorType) { case 'NetworkError' : console .info ('Network error, reloading video...' ) flv.load (); break ; case 'MediaError' : console .info ('Media error, recovering playback...' ) flv.recoverMediaError (); break ; default : console .info ('Unknown error, reloading video...' ) flv.load (); break ; } });
可根据自己的代码逻辑自行修改。
以上为个人浅薄理解,亲身实践,如有更好的方法或者有需要改进的地方,欢迎评论区友好交流指正。
如果觉得有帮助的话,不妨点个赞和收藏,加个关注吧!
不定期更新遇到并解决的问题哦。