小程序video标签在(华为手机)无法播放.mp4长视频(ios上正常)

问题场景

后台上传了有一个大小为700+M的视频文件,结果在小程序播放页面加载一会就会黑屏,并且视频时长也没有解析成功,但是视频路径在浏览器访问是没有问题的。(当时是在小米手机出现该bug)

分析问题

可能原因:

  1. 上传阿里云视频路径地址有问题。(已排除)
  2. 可能视频文件过大,导致加载失败。
  3. 是否是手机厂商兼容性问题。

解决方案

针对以上问题首先在本地微信ide上无法复现该bug,视频都能正常播放。然后找了三款手机进行测试:

机型是否复现该bug
vivo
华为
苹果

接着就去百度找相关帖子,最多的解决方案是在video标签上添加custom-cache="{{true}}",意思大概是是否允许用户缓存,由于微信小程序中的video标签是对原生H5<video>做过二次封装的,因此查了官方文档,文档上并未出现该属性,并且添加完这个属性后并未解决我的问题

于是,就直接使用该标签的解析错误的回调:

捕获的错误信息如下:

error {
    "type": "error", 
    "target": {"dataset": {}, "id": "myVideo", "offsetTop": 0, "offsetLeft": 0},             
    "currentTarget": {"dataset": {}, "id": "myVideo", "offsetTop": 0, "offsetLeft": 0},     
    "timeStamp": 32924, 
    "detail": {
        "errMsg": "MEDIA_ERR_DECODE(-14000,14010017)"
    }
}

 最后搜了很多帖子都没有找的解决办法,最后将问题抛给了官方:

结论

最后,通过修改视频文件名称问题是解决了,但是小视频文件名可以是中文,大视频文件就不行,属实有点。。。,当然还有其他方式比如将视频源文件转码成其他格式的文件。希望文章能欧帮助到遇到同样问题的小伙伴,有问题欢迎指正,再见!!

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值