(CODE:3 MEDIA_ERR_DECODE) Playback cannot continue. No available working or supported playlists

news/2024/2/27 22:36:10

着急的盆友可以直接看下面我的解决办法(大家项目不同,报错原因也可能不同,但是可以试试这个思路),不着急的童鞋可以看看跟我的报错是否一样。
最近项目中才接触m3u8格式的文件,其实相当于是对视频文件记录地址、时长等信息的索引文件,在网上查询说是用videojs来播放,于是下载、引入了videojs,这里不详细描述,可参考网址: # 使用videojs播放 .m3u8格式文件
按照上文链接中的方法,在之前一个demo项目中用的很顺利,正常播放m3u8文件也没报错。但是今天我又新起了一个项目,把之前demo的代码拿过来,发现一样的m3u8播放不了了,报错信息:VIDEOJS: ERROR: (CODE:3 MEDIA_ERR_DECODE) Playback cannot continue. No available working or supported playlists.
在这里插入图片描述

详细报错信息:(太长不看版)

video.es.js:42728 Uncaught TypeError: Cannot read properties of null (reading 'aborted')at MockXMLHttpRequest.<anonymous> (video.es.js:42728:17)at MockXMLHttpRequest.dispatchEvent (mock.js:8472:25)at XMLHttpRequest.handle2 (mock.js:8304:19)
(anonymous) @ video.es.js:42728
dispatchEvent @ mock.js:8472
handle2 @ mock.js:8304
XMLHttpRequest.send (async)
send @ mock.js:8363
_createXHR @ index.js:274
createXHR @ index.js:91
XhrFunction @ video.es.js:31145
mediaSegmentRequest2 @ video.es.js:42899
updateTransmuxerAndRequestSegment_ @ video.es.js:46484
loadSegment_ @ video.es.js:46437
fillBuffer_ @ video.es.js:45391
monitorBufferTick_ @ video.es.js:45348
setTimeout (async)
monitorBuffer_ @ video.es.js:45336
load @ video.es.js:44969
load @ video.es.js:51865
setupFirstPlay @ video.es.js:52008
(anonymous) @ video.es.js:51457
data.dispatcher @ video.es.js:2311
trigger @ video.es.js:2447
EventTarget$2.trigger @ video.es.js:2850
setupInitialPlaylist @ video.es.js:31077
(anonymous) @ video.es.js:31014
callbackWrapper2 @ video.es.js:31121
(anonymous) @ video.es.js:31146
cbOnce @ index.js:104
loadFunc @ index.js:178
dispatchEvent @ mock.js:8476
handle2 @ mock.js:8304
load (async)
open @ mock.js:8315
_createXHR @ index.js:232
createXHR @ index.js:91
XhrFunction @ video.es.js:31145
start2 @ video.es.js:30979
load @ video.es.js:30911
MasterPlaylistController2 @ video.es.js:51226
src @ video.es.js:54538
handleSource @ video.es.js:55121
_Tech.setSource @ video.es.js:9920
Html52 @ video.es.js:19980
loadTech_ @ video.es.js:23207
src_ @ video.es.js:25647
(anonymous) @ video.es.js:25552
setSourceHelper @ video.es.js:10286
setSourceHelper @ video.es.js:10288
(anonymous) @ video.es.js:10026
(anonymous) @ video.es.js:5166
setTimeout (async)
setTimeout2 @ video.es.js:5161
setSource @ video.es.js:10025
handleSrc_ @ video.es.js:25542
src @ video.es.js:25618
MediaLoader2 @ video.es.js:10511
addChild @ video.es.js:4249
handleAdd2 @ video.es.js:4381
initChildren @ video.es.js:4430
Player2 @ video.es.js:22520
videojs @ video.es.js:28339
getVideo @ Event.vue:189
handlePlayAnEventVideo @ Event.vue:166
onClick @ Event.vue:31
callWithErrorHandling @ runtime-core.esm-bundler.js:155
callWithAsyncErrorHandling @ runtime-core.esm-bundler.js:164
invoker @ runtime-dom.esm-bundler.js:366
video.es.js:228 VIDEOJS: ERROR: (CODE:3 MEDIA_ERR_DECODE) Playback cannot continue. No available working or supported playlists. MediaError {code: 3, message: 'Playback cannot continue. No available working or supported playlists.'}
(anonymous) @ video.es.js:228
log2.error @ video.es.js:416
error @ video.es.js:26181
(anonymous) @ video.es.js:54564
data.dispatcher @ video.es.js:2311
trigger @ video.es.js:2447
EventTarget$2.trigger @ video.es.js:2850
blacklistCurrentPlaylist @ video.es.js:52252
getCodecsOrExclude_ @ video.es.js:52704
tryToCreateSourceBuffers_ @ video.es.js:52807
updateCodecs2 @ video.es.js:51804
data.dispatcher @ video.es.js:2311
trigger @ video.es.js:2447
EventTarget$2.trigger @ video.es.js:2850
handleTrackInfo_ @ video.es.js:45742
handleSegmentBytes2 @ video.es.js:42405
segmentFinish2 @ video.es.js:42619
(anonymous) @ video.es.js:42661
(anonymous) @ video.es.js:42136
callbackWrapper2 @ video.es.js:31121
(anonymous) @ video.es.js:31146
cbOnce @ index.js:104
loadFunc @ index.js:178
dispatchEvent @ mock.js:8476
handle2 @ mock.js:8304
load (async)
open @ mock.js:8315
_createXHR @ index.js:232
createXHR @ index.js:91
XhrFunction @ video.es.js:31145
mediaSegmentRequest2 @ video.es.js:42899
updateTransmuxerAndRequestSegment_ @ video.es.js:46484
loadSegment_ @ video.es.js:46437
fillBuffer_ @ video.es.js:45391
monitorBufferTick_ @ video.es.js:45348
setTimeout (async)
monitorBuffer_ @ video.es.js:45336
load @ video.es.js:44969
load @ video.es.js:51865
setupFirstPlay @ video.es.js:52008
(anonymous) @ video.es.js:51457
data.dispatcher @ video.es.js:2311
trigger @ video.es.js:2447
EventTarget$2.trigger @ video.es.js:2850
setupInitialPlaylist @ video.es.js:31077
(anonymous) @ video.es.js:31014
callbackWrapper2 @ video.es.js:31121
(anonymous) @ video.es.js:31146
cbOnce @ index.js:104
loadFunc @ index.js:178
dispatchEvent @ mock.js:8476
handle2 @ mock.js:8304
load (async)
open @ mock.js:8315
_createXHR @ index.js:232
createXHR @ index.js:91
XhrFunction @ video.es.js:31145
start2 @ video.es.js:30979
load @ video.es.js:30911
MasterPlaylistController2 @ video.es.js:51226
src @ video.es.js:54538
handleSource @ video.es.js:55121
_Tech.setSource @ video.es.js:9920
Html52 @ video.es.js:19980
loadTech_ @ video.es.js:23207
src_ @ video.es.js:25647
(anonymous) @ video.es.js:25552
setSourceHelper @ video.es.js:10286
setSourceHelper @ video.es.js:10288
(anonymous) @ video.es.js:10026
(anonymous) @ video.es.js:5166
setTimeout (async)
setTimeout2 @ video.es.js:5161
setSource @ video.es.js:10025
handleSrc_ @ video.es.js:25542
src @ video.es.js:25618
MediaLoader2 @ video.es.js:10511
addChild @ video.es.js:4249
handleAdd2 @ video.es.js:4381
initChildren @ video.es.js:4430
Player2 @ video.es.js:22520
videojs @ video.es.js:28339
getVideo @ Event.vue:189
handlePlayAnEventVideo @ Event.vue:166
onClick @ Event.vue:31
callWithErrorHandling @ runtime-core.esm-bundler.js:155
callWithAsyncErrorHandling @ runtime-core.esm-bundler.js:164
invoker @ runtime-dom.esm-bundler.js:366
video.es.js:42680 Uncaught TypeError: Cannot read properties of null (reading 'aborted')at MockXMLHttpRequest.<anonymous> (video.es.js:42680:17)at MockXMLHttpRequest.dispatchEvent (mock.js:8472:25)at XMLHttpRequest.handle2 (mock.js:8304:19)

最后发现罪魁祸首是引入了mock: import ‘./mock’;
在这里插入图片描述

把这一行注释掉就可以了:
在这里插入图片描述

原理我还没搞明白,理论上来说引入了没有使用应该是没有影响的,但是我这确实报错了。
大家不同的项目引入的组件不同,如果遇到同款问题,建议把可疑的引入先注释掉看看情况。
因为这个报错,各种中网外网查咋回事,浪费了我一天时间。。。


http://www.ppmy.cn/news/479975.html

相关文章

国产单路AHDRX芯片XS9950,替代TP9950

国产单路AHDRX芯片XS9950&#xff0c;单通道模拟复合视频解码芯片方案&#xff0c;替代TP9950 XS9950 是单通道模拟复合视频解码芯片方案&#xff0c;支持 HDcctv 高清协议和 CVBS 标清协议&#xff0c;最高支持单路 1080P30fps。XS9950将接收到的高清模拟复合视频信号经过模数…

99版人民币收藏价值分析

一、99版人民币剖析 1、票面 99100&#xff1a;票面棕红色;横黑竖蓝&#xff0c;两组数码&#xff0c;两种色彩&#xff08;05100一组数码&#xff0c;前2位数棕黄色&#xff0c;后6位数黑色&#xff0c;双色组码递减式排列&#xff09;;票面无面额水印100;无面额拼音YUAN。 99…

SpringMVC 源码分析之 DispatcherServlet

SpringMVC 源码分析之 DispatcherServlet FrameworkServletserviceprocessRequestLocaleContext 和 RequestAttributesLocaleContextRequestAttributes 事件发布 DispatcherServletdoService代码分析 doDispatch参数含义具体的处理逻辑&#xff1a; processDispatchResult 引用…

Python基础语法第一章、认识Python

一、计算机基础概念 1.1什么是计算机? 很多老一辈的人, 管下面这个叫做计算机. 然鹅, 它只是 "计算器", 和计算机是有很大区别的. 现在我们所说的计算机, 不光能进行算术运算, 还能进行逻辑判断, 数据存储, 网络通信等等功能, 以至于可以自动的完成非常复杂的工作…

IDEA远程调试kubernetes环境中的容器应用(Java应用)

应用场景: IDEA远程调试kubernetes环境中的容器应用(Java应用)应用场景:Java开发的项目在本地运行正常,然后将容器运行方式的项目发布到远端服务器上线运行后,出现了异常情况,此时频繁去修改代码发布镜像进行问题验证,将耗费较大的时间成本。 为了提高问题定位和代码调…

你的仓库VS别人家的仓库,有什么不同?

导读&#xff1a; 近年来&#xff0c;随着新技术的蓬勃发展&#xff0c;企业的仓储管理水平大大提高&#xff0c;PDA、RFID、AGV、立体仓库、智能分拣线等各项新技术的应用层出不穷。然而&#xff0c;着眼于制造型企业&#xff0c;却发现仍有许多仓库处在比较原始、传统、粗放…

定时任务最简单的3种实现方法

定时任务在实际的开发中特别常见&#xff0c;比如电商平台 30 分钟后自动取消未支付的订单&#xff0c;以及凌晨的数据汇总和备份等&#xff0c;都需要借助定时任务来实现&#xff0c;那么我们本文就来看一下定时任务最简单的几种实现方式。 TOP 1&#xff1a;Timer Timer 是…

unity鼠标滚轮实现镜头拉近拉远

float fieldView Camera, main. fieldOfView:fieldView - Input.GetAxis("Mouse ScrollWheel")*5f:fieldView Mathf.Clamp(fieldView,50.80):Camera.main.fieldOfView fieldView:将以上代码放在Updata里面即可实现&#xff0c;调整数值也可以实现速度不同运行。

iPhonexr安兔兔html5测试,给大家科普下iphonexr苹果手机安兔兔跑分多少分

现在越来越多的小伙伴对于iphonexr苹果手机安兔兔跑分多少分这方面的问题开始感兴趣&#xff0c;因为大家现在都是想要熟知&#xff0c;学到这当中的各项功能&#xff0c;那么既然现在大家都想要知道iphonexr苹果手机安兔兔跑分多少分&#xff0c;尧哥今天就来给大家针对这样的…

那些让你少女心炸裂的手机APP

推荐一&#xff1a;WithU专注之旅 它是一款以游戏化为中心的软件&#xff0c;风格优美&#xff1b;支持苹果版&#xff0c;iPad也可以安装使用。它的风格令人惊叹&#xff0c;它支持游戏化的游戏玩法&#xff0c;多个精美的场景和旅行地图。您需要利用您的专用时间在旅行中继续…

Solon 成为信通院可信开源社区、可信开源项目

自2021年9月17日成立以来&#xff0c;可信开源社区共同体共有五批新成员加入。在4月21日“OSCAR开源生态建设论坛”上&#xff0c;可信开源社区共同体又迎来2位正式成员和6位预备成员&#xff0c;Solon 为其一&#xff08;图之右下角&#xff09;&#xff1a; 图片引用自CAICT可…

手机跑分全是骗人的?

本文转载自 雷科技&#xff0c;作者 雷科技数码3C组 你有多久没“跑个分”了&#xff1f; 时至今日&#xff0c;跑分依然是国内厂商宣传性能的必要手段&#xff0c;但它在发布会上的比重已经大大降低&#xff0c;就连最先喊出“不服跑个分&#xff1f;”的小米&#xff0c;也将…

linux运维脚本自动删除超出日期的备份文件

linux 日期命令 date "%F" 输出日期 2023-04-24 date "%F %T" 输出日期时间 2023-04-24 16:54:19 date -d "-2 day" "%F" 输出今天的日期减去2天 2023-04-22 定义变量为5天前的日期 tem$(date -d 4 days ago "%Y%m%d&qu…

JavaEE规范

Servlet&#xff1a;用于开发 Web 应用程序的 API&#xff0c;定义了处理 HTTP 请求和响应的方式。JSP&#xff08;JavaServer Pages&#xff09;&#xff1a;一种在服务器端生成动态网页的技术&#xff0c;允许将 Java 代码嵌入到 HTML 页面中。JPA&#xff08;Java Persisten…

轮毂油封:车辆平稳高效运行的关键部件

轮毂油封&#xff0c;也称为轮封&#xff0c;是带轮车辆运行的重要部件。它的主要功能是防止轮毂总成漏油&#xff0c;从而导致其他部件损坏和性能下降。在本文中&#xff0c;我们将讨论轮毂油封的重要性及其在确保车辆平稳高效运行方面的作用。 轮毂油封通常由橡胶或类似橡胶…

20款奔驰S350L改迈巴赫双拼色,中网,轮毂,字标套件,再续经典

奔驰S级在外观上一直都是走在时尚最前沿&#xff0c;经典恢宏大气的车身&#xff0c;第一眼看上去就给人很强的感官冲击力&#xff0c;以感性触及人心&#xff0c;因纯粹成就隽永。S级轿车凭借“感性纯粹”的设计哲学&#xff0c;再度引领审美潮流&#xff0c;由内而外重塑豪华…

AI Image Codec技术落地实践

AI Codec自2016年首次提出以来&#xff0c;众多海内外高校、企业研究院等机构对此展开了广泛研究。6年时间里&#xff0c;AI Codec 的SOTA方案的压缩性能已经超越了H.266(最新的传统Codec标准)&#xff0c;展现了强大的技术潜力。但受限于计算复杂度、非标等原因&#xff0c;AI…

斯凯孚济南商用车轴承及自调心滚子轴承基地正式投产,服务中国、亚洲乃至全球市场...

美通社消息&#xff1a;斯凯孚济南二期商用车轴承及自调心轴承生产基地投产启动仪式在济南高新技术产业开发区圆满举行。 斯凯孚中国及东北亚区总裁王辉表示&#xff1a;“济南基地是斯凯孚在中国部署的又一综合制造基地和技术中心&#xff0c;也是斯凯孚亚太区北方战略基地。随…

没车牌也能开上国产特斯拉:北京3年租赁每月1万1,全国最低7千

雷刚 发自 凹非寺 量子位 报道 | 公众号 QbitAI 摇不到车牌没关系&#xff0c;特斯拉现在有了新举措。 特斯拉官方最新宣布&#xff0c;即日起为北京客户推出三年免息融资购车与免费车牌租赁服务。 简称融资租赁方案。 特斯拉称&#xff0c;通过融资租赁方案购买Model 3长续航版…

carsim/trucksim获取轮胎侧偏刚度、纵向刚度

本文参考&#xff1a;https://blog.csdn.net/weixin_44902384/article/details/107926814 这个方法适应计算侧偏刚度、纵向刚度&#xff0c;因为魔术公式里y 可以代表侧向力、纵向力 针对上面的内容&#xff0c;有两个问题需要解释。1是魔术公式轮胎中 有的是tan-1 有的是ar…
最新文章