ios video标签部分mp4文件无法播放的问题
问题描述:
部分MP4文件在ios的微信浏览器中无法播放,点击播放后缓冲一下之后显示叉,而另外一些mp4文件正常,同时在安卓全部下正常。
原因分析:
h264编码的压缩级别问题导致。
苹果官方文档中对 ios 能支持的压缩级别进行了描述 点击查看
我们可以通过 potplayer等软件,查看对应的mp4文件的 压缩级别,如果 压缩级别高于苹果能支持的压缩级别,则会出现ios下无法播放的问题.
具体的苹果设备支持的编码格式列表: 参考列表
解决方法:
如果视频存放在 阿里云或者七牛云,可以使用 他们的 视频转码服务(一般是按量计费),转码为 h264 high 4.1 就基本可以支持 phone4s + 的苹果设备了。如果 要兼容所有(包括iphone3gs 和 iphone4),那需要转为 baseline 3.1
ffmpeg -i input.flv -vcodec libx264 -acodec aac output.mp4
ffmpeg -i sample.mp4 -vf "scale=2*trunc(iw/2):-2,setsar=1" -profile:v main -pix_fmt yuv420p sampleXX.mp4
转换结果
ffmpeg -i sample.mp4 -vf "scale=2*trunc(iw/2):-2,setsar=1" -profile:v baseline -level 3.0 -pix_fmt yuv420p sampleXX2.mp4
转换结果,要实现的效果:
参考:https://www.cnblogs.com/aleafo/p/7644553.html
版权声明:本文为YES开发框架网发布内容,转载请附上原文出处连接
post YES开发框架