浏览器只能播放6路http-flv流的解决方法

一、现象

如下图所示,尝试在网页中播放超过6路http-flv流, 结果第7路无法播放。

 

在开发者工具中可以看到超过6个在线播放数目时,请求flv地址处于pending状态。

 

二、原因

导致该现象产生的原因为浏览器同域名请求的最大并发数限制。具体可以参考文章《浏览器同域名请求的最大并发数限制》、《flvjs是否限制了直播流的数量?》。

 

三、解决方法

方法一、使用nginx-http-live-module。nginx-http-live-module是nginx-http-flv-module的作者在其基础上开发的商用软件。该模块使用了HTTP/2.0,从而解决浏览器限制HTTP/1.x同源连接并发个数的问题。参考文章《使用HTTP/2.0解决浏览器限制同源HTTP/1.x连接并发个数的问题》。缺点:该模块不开源,不免费,如果想使用,得联系nginx-http-flv-module和nginx-http-live-module的作者。注意:不能简单的在编译nginx时加上http_v2_module和nginx-http-flv-module,这样开启http2.0是会失败的,参考文章《关于https的支持》。

 

方法二:使用ws-flv(websocket-flv),目前很火的流媒体服务器ZLMediaKit支持ws-flv。链接:https://github.com/xia-chu/ZLMediaKit/wiki/%E6%92%AD%E6%94%BEurl%E8%A7%84%E5%88%99

编译方法可以参考博文《windows下编译ZLMediaKit》。

 

 

 

 

  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值