zoukankan      html  css  js  c++  java
  • 如何拉取公网RTSP/RTMP流在内网多客户端播放

    好多情况下,一路RTSP或RTMP网络流过来后,想共享给更多局域网内的客户端播放,一般来说,有两种设计方案:

    1. 拉取的RTSP或RTMP流,回调后的数据,转推RTMP服务器,内网部署一台RTMP服务器(如NGINX或者SRS)即可;

    2. 拉取后的RTSP或RTMP流,回调后的数据,汇聚到内置RTSP服务模块,内网其他终端,只要拉RTSP流即可,无需再二次部署流媒体服务器。

    方案一的好处在于,NGINX或者SRS等RTMP服务器,性能强劲,支持的并发更多,如果小并发的场景,用方案2比较合适,无需单独部署服务,即可实现技术方案,这就是我们要介绍的:内置RTSP网关模块。

    内网RTSP网关模块功能

    内网RTSP网关模块,系内置轻量级RTSP服务模块扩展,完成外部RTSP/RTMP数据拉取并注入到轻量级RTSP服务模块工作,多个内网客户端直接访问内网轻量级RTSP服务获取公网数据,无需部署单独的服务器,支持RTSP/RTMP H.265数据接入。

    内置轻量级RTSP服务模块和内置RTSP网关模块共同点:

    内置轻量级RTSP服务模块和内置RTSP网关模块,核心痛点是避免用户或者开发者单独部署RTSP或者RTMP服务,数据汇聚到内置RTSP服务,对外提供可供拉流的RTSP URL,适用于内网环境下,对并发要求不高的场景,支持H.264/H.265,支持RTSP鉴权、单播、组播模式,考虑到单个服务承载能力,我们支持同时创建多个RTSP服务,并支持获取当前RTSP服务会话连接数。

    内置轻量级RTSP服务模块和内置RTSP网关模块不同点:数据来源不同

    1. 内置轻量级RTSP服务模块,数据源来自摄像头、屏幕、麦克风等编码前数据,或者本地编码后的对接数据;

    2. 内置RTSP网关模块,实际上是RTSP/RTMP拉流模块+内置轻量级RTSP服务模块组合出来的。数据源来自RTSP或RTMP网络流,拉流模块完成编码后的音视频数据回调,然后,汇聚到内置轻量级RTSP服务模块。

    整体设计方案如下:

    下载Demo源码测试:

    Github 下载Windows平台转发DEMO,对应( Windows平台多路RTSP|RTMP转RTMP推送模块SDK(C++) Demo工程),DEMO基于VS2013开发,如下图配置:

    播放端,用SmartPlayer.exe 或者 VLC播放 即可。

  • 相关阅读:
    一些业内有名的网站收集
    WCF重载
    FCKEditor fckconfig.js配置,添加字体和大小 附:中文字体乱码问题解决
    查询第几条到第几条的数据的SQL语句
    SPOJ 9939 Eliminate the Conflict
    UVA 10534 Wavio Sequence
    HDU 3474 Necklace
    POJ 2823 Sliding Window
    UVA 437 The Tower of Babylon
    UVA 825 Walking on the Safe Side
  • 原文地址:https://www.cnblogs.com/daniulivesdk/p/12253694.html
Copyright © 2011-2022 走看看