处理.mp4的视频在电脑浏览器、安卓手机可以正常播放,ios设备无法播放的问题

处理MP4视频在IOS设备无法播放的问题

今天遇到了这个问题,业务人员上传视频后发现在ios设备无法播放,在安卓设备可以正常播放,复现了下,确实有这个问题,项目的视频都是上传到七牛云,拷贝出视频链接,直接丢到浏览器也可以正常播放。还是老样子,面向百度编程,查询到了ios设备对视频的压缩级别支持的原因。

处理.mp4的视频在电脑浏览器、安卓手机可以正常播放,ios设备无法播放的问题
参考博文

我这项目的视频存储在七牛云上,处理其实也很简单,直接在七牛后台对视频转码下就行了。为了防止以后遇到这种问题,咨询了下七牛的技术支持,没想到老哥直接说暂时没有判断视频压缩级别的接口。。。
然而通过对比七牛的?avinfo的返回json,发现转码后可以播放与之前不能播放的视频,level 可以明显看出,
处理.mp4的视频在电脑浏览器、安卓手机可以正常播放,ios设备无法播放的问题
处理.mp4的视频在电脑浏览器、安卓手机可以正常播放,ios设备无法播放的问题
结合文档中说的关于H264压缩级别的

Although the protocol specification does not limit the video and audio formats, the current Apple implementation supports the following formats:
Video:
H.264 Baseline Level 3.0, Baseline Level 3.1, Main Level 3.1, and High Profile Level 4.1.

个人盲猜level字段可能就是指的是压缩级别,30估计就是文档中的3.0了,并不能确定,错了的话希望大佬可以指点下。
我目前的解决方式就是视频上传后调用?avinfo判断下这个字段,大于等于41的就调用了下七牛的转码队列。目前为止能解决问题。以后出问题再说吧。。。