提前buffer好就行。 play本身是没有卡顿的。又不是播放什么特殊的东西。
基本没有无缝播放这种需求,因为这对用户影响也太大了这。转折的时候pause 个一秒才是正常的吧。
你想啊, 前面一个特别柔和,后面一段特别激烈,不给用户一点时间,人家直接受不了就关了。。。。
如果是一部视频分两段,请好好streaming。。。
一、首先用js监听ended事件,然后更改src,再play。此方法出现题主所说的卡顿,没法无缝循环。
二、然后想预载入多个video标签,每个video tag设置所要循环的src,第一个要播放的video设置正常的宽高,play(), z-index :0。其他video tag设置width:1px;height:1px;并且暂停(preload),监听播放中的video ended,改变width和height,设置为1px;,把下一个播放的video tag设置成正常宽高,z-index 0; 这个方法没有实际测试,目测流行浏览器下应该是可行的,但是微信浏览器等定制类的估计不行,video tag会被自动最大化。
三、如果服务器允许跨域和设置cors,使用flvjs的多来源播放flv应该是可行的,flvjs或者其他非video tag播放器,都使用ajax的xhr或者fetch来获取视频片段数据,只是获取片段需要知道range,服务器的cors策略要支持range和length,可惜我用的是第三方服务器,自己设置不了cros。
参考资料
知乎知乎[引用时间2018-1-3]
在测上行速率不达标可以从以下几个方面考虑:1,配置参数不合理。检查下参数。2,上行是否有干扰存在,可以通过扫频仪或其他网优工具测下3,不知道你的速率不达标是怎样测的速率,可以通过灌包测,也可以通过FTP上传做。有时候业务服务器也可能出现速率的瓶颈,换个服务器试下。参考:/linkurl=vR0aoeskOJS4Zxx--ntnR5Cxv8aGbdpLoexJUZH3glRKucStkhq3UjolTWHWpxrRVnr0y6IKPCmR2i-oAh-7ei_7igUjOqZUxeCw6RZHRw7在测上行速率不达标可以从以下几个方面考虑:1, 配置参数不合理。检查下参数。
2,上行是否有干扰存在,可以通过扫频仪或其他网优工具测下
3,不知道你的速率不达标是怎样测的速率,可以通过灌包测,也可以通过FTP上传做。有时候业务服务器也可能出现速率的瓶颈,换个服务器试下。
参考:>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)