现在需要有一个功能,将其他地方摄像头的画面实时传输到前端页面,类似市面上的直播软件吧,并发量并不高。搜索了文档,但是大多数都是使用 nginx + rtmp 模块实现的。我搭建了一个测试,延时太高无法接受。所以想请教大神,有什么实时性好的视频服务器搭建攻略。跪求跪求!
1 xiaoxi123 2018-06-26 10:44:39 +08:00 ![]() 不要用 rtmp,对服务器要求高,小成本直播,用 http-flv |
2 jianlu 2018-06-26 11:10:24 +08:00 flask+opencv |
3 liu826250634 OP @xiaoxi123 有没有什么靠谱的文档链接?麻烦了。 |
4 jimzhong 2018-06-26 11:13:26 +08:00 OBS? |
5 liu826250634 OP @jimzhong 我搭的是服务器,OBS 不是用来录制、推流的么? |
![]() | 6 iamsee 2018-06-26 11:57:30 +08:00 ![]() 小流量的 可以试下 srs https://github.com/winlinvip/srs,自动转码等功能还可以,延时根据配置可以降到很低 |
7 iamsee 2018-06-26 12:01:06 +08:00 ![]() 楼主可以留个联系方式交流一哈 |
8 ZXCDFGTYU 2018-06-26 12:03:27 +08:00 https://github.com/ossrs/srs srs 我记得可以支持 rtmp、hls 等等好多类型的来着。 另外延迟高的话,你可以看看你的上传带宽多大。延迟高应该和你的上传带宽有关,或者说压缩一下你推流的视频。 |
9 liu826250634 OP @iamsee 826250634 微信 |
![]() | 10 likuku 2018-06-26 13:23:41 +08:00 不转码的话,rtmp 还是可以的。加上网络缓冲什么,延迟 1 分钟还是可以接受的吧。 需要转码的话,就得靠 N 卡来加速 ffmpeg 了。 |
11 liu826250634 OP @iamsee 我之前也没做过这个, 但是公司有需求才找资料的。 |
12 liu826250634 OP @ZXCDFGTYU 我看了资料,都说 hls 延迟都是挺高的。 |
13 liu826250634 OP @likuku 我需要延迟控制两秒以内。所以接受不了。 |
15 xiaoxi123 2018-06-26 14:07:21 +08:00 @liu826250634 hls 可以通过把切片分小一点,来降低延迟 |
![]() | 16 fgodt 2018-06-26 14:15:04 +08:00 ![]() 首先你延时就决定了不能是现成方案,目前直播方案延时普遍较高 说直播方案问题:你的摄像头是什么摄像头 rtsp 的流么 如果是 rtsp 那么方案就是 rtsp->ffmpeg->rtmp->前端 或者是 :rtsp->ffmpeg->flv->前端 再或者是:rtsp->自定义服务器->websocket->前端 这些方案在延时上已经是最低了 如果这都解决不了你的问题就要考虑自己优化了,我们这边就是自己写播放器等优化才把延时降低到 2s 左右 |
17 liu826250634 OP @fgodt 谢谢老哥的建议,我们这里涉及不同的厂商,我们公司 CS 端的话(使用海康 SDK 方式取流),再传给我们,其他厂商都应该大同小异。但是因为我们不能直接调海康的接口。所以想采用的是搭一个服务器,他们把视频流传给服务器,再从服务器取视频(我也不太清楚这个方案靠不靠谱)。 |
![]() | 18 xshwy 2018-06-26 15:05:40 +08:00 直接用现有的直播 SDK 不行吗 腾讯云: https://cloud.tencent.com/product/LVB |
19 liu826250634 OP @xshwy 我们是在专网里面,不能上网。 |
20 javen73 2018-06-26 18:03:41 +08:00 srs red5 |
![]() | 21 hahastudio 2018-06-26 18:07:59 +08:00 摄像头+物理机+远程桌面? 这个延时应该很低 |
22 explicit 2018-06-26 18:27:17 +08:00 推荐用第三方服务,比如:七牛云之类 |
23 explicit 2018-06-26 18:32:11 +08:00 自己玩玩无所谓的,如果打算商业化,建议多看看中国政府对于直播行业制定的法律法规. |
24 explicit 2018-06-26 18:37:16 +08:00 "类似市面上的直播软件吧,并发量并不高",高可用的视频直播,点播服务主要靠的是 CDN,没有资金实力的小公司,自己搞 CDN 划算吗? |
![]() | 25 CFM880 2018-06-26 18:38:17 +08:00 via Android 商用自建的话,考虑一下 wowza |
![]() | 26 qiayue PRO jsmpeg.com 了解一下 |
![]() | 27 Geekgogo 2018-06-26 18:42:22 +08:00 我们公司正好也在做这个,用的是 rtmp+nginx 方式,由于 hls 延迟太高,基于 videojs 直接在前端页面播放 rtmp 流,但是很多浏览器都没办法正常播放,正在找方法解决。。。 |
![]() | 28 chinvo 2018-06-26 18:46:13 +08:00 nginx-rtmp-module |
![]() | 29 lyver 2018-06-26 19:55:48 +08:00 一个人来说开发一套直播系统是非常困难的,不仅要精通音视频技术还得大量的成本。 自建 CDN 分发的费用是非常高的,建议去阿里云租,服务器+CDN 走 RTMP 协议即可,一般延迟在 3S 左右。需要有一定开发能力。 我司保利威,是做直播 SAAS 平台的,接口完善,专人对接,要满足你的这个需求,非常简单,延迟和阿里差不多。 主要还是看自己的需求去选择,如果团队想要搭建直播平台,没有丰富的开发经验,可以考虑我们这类 SAAS 服务商,把前端代码嵌入就行了,节省项目周期。 |
![]() | 30 realpg PRO 闭路实时监控系统嘛 海康自身就有完整方案 也有异地调取的方案 为啥不采购完整了还自己开发 |
![]() | 31 tinywhale 2018-06-26 21:21:39 +08:00 WebRTC 万能,如果你能把服务器框架和摄像头视频流对接起来的话 |
![]() | 32 likuku 2018-06-26 21:36:58 +08:00 低延时可没那么简单,最基本的,就是你摄像头本身编码和推流能力,是否可以作到 2s 以内缓冲就可以稳定工作, 其次,推流的协议是否可以支持达到那么低的延迟(至少先保证摄像头到最近的视频服务器这段) |
![]() | 33 twistoy 2018-06-27 00:06:44 +08:00 srs 性能完全足够,控制一下缓存的大小,延迟可以控制的很小 |
34 scnace 2018-06-27 00:30:56 +08:00 via Android 我之前玩过 用了 Go 写的流媒体服务器 joy4 |
35 sunzongzheng 2018-06-27 01:40:07 +08:00 via Android 我搭过, 公网服务器 2s 延迟有点困难,带宽也是问题 |
![]() | 36 iamsee 2018-06-27 09:17:49 +08:00 @liu826250634 要延迟低别用 hls,hls 可以作为切片点播服务器,还是 rtmp 延迟低 |
![]() | 37 iamsee 2018-06-27 09:18:26 +08:00 最主要的是带宽问题,如果是内网还好说,带宽费折腾不动 |
![]() | 38 xiaoheijw 2018-06-27 09:48:06 +08:00 刚好,前阵子,也有这样一个需求,把摄像头内容推给前端,一开始使用的是 hls,延迟大概是 1 分钟,之前换了 srs,延迟大概是 8s,最后干脆用原生的 ffserver,延迟大概是 2s,当然以上是内网环境。也试过用阿里云的直播推流,但阿里云也大概延迟是 5s。如果你有公网需求的话,建议还是用大厂的产品。 |
39 liu826250634 OP @realpg 我们有海康的摄像头。但是不能直接调用,需要通过 CS 端转发。如果是能直接调用的话,通过控件延迟很低。 还涉及不同的摄像头,没办法统一,所以才想着搭一个服务器转发。 |
![]() | 40 M4ster 2018-06-27 10:34:24 +08:00 ![]() 之前自己折腾玩过,服务端就用的 SRS,PC 录屏用的 OBS,播放可用 flv.js 。 SRS: https://github.com/ossrs/srs/wiki/v2_CN_Home SRS 提供了丰富的接入方案将 RTMP 流接入 SRS,包括推送 RTMP 到 SRS、推送 RTSP/UDP/FLV 到 SRS、拉取流到 SRS。 SRS 还支持将接入的 RTMP 流进行各种变换,譬如将 RTMP 流转码、转发给其他服务器、转封装成 HTTP-FLV 流、转封装成 HLS、转封装成 HDS、录制成 FLV。 SRS 包含支大规模集群如 CDN 业务的关键特性,譬如 RTMP 多级集群、VHOST 虚拟服务器、无中断服务 Reload、HTTP-FLV 集群。 此外,SRS 还提供丰富的应用接口,包括 HTTP 回调、安全策略 Security、HTTP API 接口、RTMP 测速。SRS 在源站和 CDN 集群中都得到了广泛的应用 Applications。 |
41 liu826250634 OP @xiaoheijw 老哥,能加微信私聊么? |
![]() | 42 lshero 2018-06-27 10:40:53 +08:00 低延时还是考虑用视频通讯的方案吧 |
![]() | 43 fgodt 2018-06-27 11:01:59 +08:00 其实你们 cs 端能拿到流就很容易了 直接 cs 端的程序改改 上公网就用阿里云,自己的局域网就用 nginx+rtmp 或者自己写个转发。都是很简单的逻辑 只要了解点 rtmp 协议基本就能弄 |
44 jimmyczm 2018-06-27 16:31:52 +08:00 wowza 不错,之前用过 |
![]() | 45 lh948 2019-09-08 14:24:49 +08:00 @liu826250634 问题解决了吗?方便加好友了解一下吗? |
46 registerrr 2019-09-11 18:27:39 +08:00 @lh948 我也遇到这个问题了,我这要求更高,要控制到 1s,太难搞了. 加个好友?wx:enp6MDM3MTA= |
![]() | 47 leffz 2020-06-27 21:16:25 +08:00 阿里云视频直播解决方案:leffz.com/live |