84669 person learning
152542 person learning
20005 person learning
5487 person learning
7821 person learning
359900 person learning
3350 person learning
180660 person learning
48569 person learning
18603 person learning
40936 person learning
1549 person learning
1183 person learning
32909 person learning
<video controls="controls" autoplay="autoplay" id="video" name="media"> <source id="source" src="" type="video/mp4"> </video>
这个是我代码
视频源为MP4(h264) 在5s上的Safari,chrome,海豚上都无法播放
闭关修行中......
视频格式MP4是正确的,但是你的后台没有对ios的视频播放器做适配。如果想要在iOS上播放视频,那么必须在http协议中应用rang请求头。
对于有的朋友还对ios播放器http的range标记不是很懂。我再讲解下。
视频文件总长度是123456789range是播放器要求的区间也就是客户端发送请求的时候http会带有这个标记,这个区间的值在http.headers.range中获取,一般是bytes=0-1这样的。
range
http.headers.range
bytes=0-1
我们需要做的处理是返回文件的指定区间(如上面的例子,我们就应该返回0到1的字符),并添加Content-Range:btyes 0-1、Accept-Ranges:bytes、'Content-Length: 123456789','Content-Type: video/mp4'到http.headers中
Content-Range:btyes 0-1
Accept-Ranges:bytes
应该是无法自动播放吧? 这是iOS的限制,<audio>``<video>必须由用户动作触发,不能自动播放
自动播放
<audio>``<video>
题主这个问题解决了么?我也遇到这个问题了。
var Media=document.getElementById("video"); Media.play();
用js调用方法就可以自动播放了:Media.autoPlay; //是否自动播放Media.loop; //是否循环播放Media.play(); //播放Media.pause(); //暂停……
视频格式MP4是正确的,但是你的后台没有对ios的视频播放器做适配。
如果想要在iOS上播放视频,那么必须在http协议中应用rang请求头。
对于有的朋友还对ios播放器http的range标记不是很懂。我再讲解下。
视频文件总长度是123456789
range
是播放器要求的区间也就是客户端发送请求的时候http会带有这个标记,这个区间的值在http.headers.range
中获取,一般是bytes=0-1
这样的。我们需要做的处理是返回文件的指定区间(如上面的例子,我们就应该返回0到1的字符),并添加
Content-Range:btyes 0-1
、Accept-Ranges:bytes
、'Content-Length: 123456789','Content-Type: video/mp4'到http.headers中应该是无法
自动播放
吧?这是iOS的限制,
<audio>``<video>
必须由用户动作触发,不能自动播放题主这个问题解决了么?我也遇到这个问题了。
用js调用方法就可以自动播放了:
Media.autoPlay; //是否自动播放
Media.loop; //是否循环播放
Media.play(); //播放
Media.pause(); //暂停
……