刚开始就感觉这个问题挺奇怪的,为啥呢,安卓手机播放正常,电脑上使用浏览器切换ios模拟设备播放也正常,然后到苹果手机上就播放失败了(错误代码是4400)。
各种百度也没人说这个事情,SDK的使用文档上也没提到这个问题,没办法只能一步步排查了。
首先是把引用的js依赖更新到了最新版,发现无济于事,然后更换了api接口也是行不通。
没有找到问题的根源,然后就到了第二天。
第二天发现有的视频是能放出来的,有的放不出来。就想到了是不是跟视频的 大小
或者 编码格式
有关。
在苹果开发者文档上找到
1.1. All video MUST be encoded using H.264/AVC or HEVC/H.265. (所有视频必须使用H.264/AVC或HEVC/H.265进行编码。)
我就安装了一个查看视频编码的工具FFmpeg,在bin目录下可以执行命令查看编码信息。
# 源视频地址可以是本地文件地址也可以是在线URL,例如:https://aqxc.ntu.edu.cn/cg-exam-server/api/front/video_play/2d9e8df58bdb43c8aa2350a3f557dcfb
ffmpeg -v trace -i "源视频地址" 2>&1
解决方案
把不兼容的视频使用格式工厂转换一下,最后把转换好的视频重新上传就大功告成了!