SRS+flv.js打造兼容性较高的直播、点播平台
https://www.cnblogs.com/lanqie/p/7804466.html
SRS+flv.js打造兼容性较高的直播、点播平台
- 1、公司之前用的是:
- 2、SRS+flv.js的优点:
- 3、上图,看看效果:
- 4、flv.js下载,构建:
- 5、如果上一步成功,接下来就是搭建SRS服务器了
- 6、添加回调
- 7、视频编辑
- 8、压力测试
- 9、转了一圈回到原点
- 10、转机
- 11、环境和部署脚本:
- 13、srs跨域
- 14、集群和负载均衡
- 15、flv.js优化--低延时(为了导播,直播不需要)
- 16、音频不同步和卡顿的解决
- 17、添加HLS流
*************************************************************************************************************************************************
注意:强烈建议使用srs3.0,srs2.0存在的问题(回调,跨域)等问题不需要修改源码,而且可以修改生成mp4视频。
回调:
| 1 2 3 4 5 6 7 8 9 10 11 12 |
|
跨域:
没测,一直用nginx代理
MP4:
后期打算直接生成mp4,替换之前的flv
*************************************************************************************************************************************************
1、公司之前用的是:
直播:rtmp+jwplayer
点播:h5(mp4文件)
弊端:兼容性差,貌似跟系统版本,浏览器,浏览器版本都有关。还有就是rtmp推流生成的文件是flv格式,需要转码成mp4才能点播。
2、SRS+flv.js的优点:
当然是兼容性大大提高了,在pc端谷歌,火狐都可以播放,手机端火狐可以,谷歌不行,其他没测。
3、上图,看看效果:


样式什么的没添加,官方的demon 直接copy过来。
4、flv.js下载,构建:
Github:https://github.com/Bilibili/flv.js
解压后进入mater:
构建:
| 1 2 3 |
|
在dist下生成了我们需要的js
flv.html:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
|
srs低延时配置:
| 1 2 3 4 5 6 7 8 9 10 |
|
video低延时:
| 1 2 3 4 5 6 7 8 9 10 |
|
设置video低延时会触发waiting事件,出现一个圆圈和降低屏幕亮度,有待处理...
这样大概可以把延时从2~3降到1秒左右。(环境不同可能有差别,在网线接交换机的情况下会比连WiFi要好)

延时和流畅不可兼得,需求不同要设置不同参数。
16、音频不同步和卡顿的解决
参考:https://github.com/Bilibili/flv.js/issues/136
解决方法是 fixAudioTimestampGap: false,注意这个配置要在config的位置
17、添加HLS流
官方文档:https://github.com/ossrs/srs/wiki/v3_CN_SampleHLS
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
存在的问题:同一地址第一次正常,后面推的都不能看,第一次生成ts切片正常,后面的ts切片会重复丢弃和生成。
参考: 转hls输出时出现的问题 #894:https://github.com/ossrs/srs/issues/894
在SrsHls::on_unpublish的时候设置SrsHls::aac_samples=0后正常。
分类: server,python,直播
好文要顶 关注我 收藏该文


懒企鹅
关注 - 5
粉丝 - 6
+加关注
1
0
« 上一篇:CentOS 6.8 部署django项目二
» 下一篇:HTTP协议学习笔记
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
