轻量级RTSP服务SDK

模块定位

轻量级RTSP服务SDK,是大牛直播SDK推送端的内置服务模块。其核心价值在于:无需用户或开发者单独部署RTSP/RTMP服务器,将本地音视频数据(摄像头、麦克风、屏幕等)编码后,直接汇聚到内置RTSP服务,对外输出可供直接拉流的RTSP URL。

该模块专为内网低并发场景设计,适用于安防监控、智慧教室、无纸化会议、工业生产、医疗健康、智能物联网等对实时性要求较高的局域网应用场景。

经实测,整体端到端延迟稳定在100~200毫秒区间,在高稳定低CPU占用前提下,是目前商用级内置RTSP服务方案中功能覆盖最全面、延迟表现最优的方案之一。


适用场景

场景类型 典型应用
安防监控 内网摄像头画面实时查看、多路监控分发
智慧教室 / 无纸化会议 同屏共享、师生互动、实时投屏
工业生产 设备状态监控、生产线视频采集与分发
医疗健康 诊室影像实时传输、内网医疗视频共享
智能物联网 IoT终端视频流本地服务化输出

技术架构

平台覆盖和架构支持

支持平台 支持架构
Windows平台 x86 debug/release, x64 debug/release
Linux(含麒麟操作系统) x86_64、aarch64
Android平台 armeabi-v7a, arm64-v8a, x86, x86_64
iOS平台 arm64

功能说明

  •  [基础功能]继承 Windows / Linux(含 x86_64 | aarch64)/ Android / iOS 平台 RTMP 推送 SDK 的全部常规能力(音视频采集、软硬编码、码率参数配置等),轻量级 RTSP 服务为独立新增模块,原有功能不受影响;
  •  [音频格式]AAC;
  •  [视频格式]H.264、H.265;
  •  [协议类型]RTSP;
  •  [传输模式]单播(Unicast)、组播(Multicast);
  •  [端口设置]支持自定义 RTSP 服务端口;
  •  [鉴权设置]支持 RTSP 鉴权,可配置用户名和密码;
  •  [会话连接数]支持实时获取当前 RTSP 服务的会话连接数,便于监控服务负载;
  •  [多服务支持]支持同时创建多个独立的内置RTSP服务;
  •  [RTSP url回调]RTSP 服务启动后,通过 Event 回调将可用的 RTSP URL 透传至上层应用。

技术优势

零服务器依赖,极简部署

传统方案需独立部署并维护 RTSP 或 RTMP 服务器,涉及服务器配置、网络映射、运维管理等一系列工作。轻量级 RTSP 服务 SDK 将服务能力内置于推送端,开发者集成 SDK 即可完成部署,无需任何服务器知识,无需额外硬件投入,显著降低使用门槛和运营成本。

超低延迟,内网实时传输

针对内网环境深度优化,端到端延迟实测稳定在 100~200 毫秒,充分满足智慧教室同屏、无纸化会议、安防实时查看等对时效性敏感的场景需求。

高效编码,带宽友好

支持 H.264 / H.265 编码格式,压缩效率高,在保证画质的同时有效降低带宽占用,即使在低带宽内网环境下也能保障流畅传输

轻量化设计,资源占用极低

SDK 体量轻巧,运行时资源占用少,不会对终端设备造成额外性能负担,适合在各类嵌入式设备、移动终端或性能受限的工控机上稳定运行。

安全可控,多模式灵活适配

支持 RTSP 鉴权机制,有效防止未授权访问;同时支持单播和组播两种传输模式——单播适合点对点精准推送,组播适合一对多高效广播,可按实际场景灵活选用。

多实例并行,服务管理完善

支持同时创建多个 RTSP 服务实例,可面向不同终端或数据源独立提供服务;配合实时会话连接数查询接口,方便开发者对服务状态进行监控与管理。

对应Demo

  •  Windows测试程序:SmartPublisherDemo.exe;
  •  Windows C++工程:WIN-PublisherSDK-CPP-Demo;
  •  Windows C#工程:WIN-PublisherSDK-CSharp-Demo;
  •  Linux工程:rtspserverdemo;
  •  Android工程:SmartPublisherV2;
  •  iOS工程:SmartiOSPublisherV2。

技术对接文档(Android为例)

以Windows平台为例

1. 在选择好需要推送出去的音视频数据类型、调整好码率后(以采集Windows桌面为例,设置好采集帧率,看是否用硬编码,码率如果不想自己配置的话,可以点击按钮“获取视频码率默认值”,如需采集麦克风或扬声器,选择即可),点击“配置查看RTSP服务”,如果需要采集摄像头,选择“采集摄像头”,并选择相应的分辨率和帧率,如果需要采集窗口,选择后,记得设置采集帧率(帧)

2. 根据需求,可以启动一路或者多路服务,每路服务,并可配置用户名密码信息(可选)。启动服务后,点击“确定”退出设置页面;

3. 配置流名称(可自定义),默认是 stream1;

4. 发布RTSP流:

5. 发布后,播放地址列表里面,会显示当前发布的url,拷贝其中一个或多个,用大牛直播直播播放器SDK,分别播放即可;

6.服务器负载查看:再次点击“配置查看RTSP服务”,即可看到每个服务连接的会话数:

7. 如需停止服务,点击页面的“停止RTSP流”即可;

8. 如需启动RTSP服务的同时,还需要把数据推到其他RTMP服务,输入推送的RTMP url,点击“推送”即可。

视频展示

经测试,整体延迟在100-200毫秒区间,在高稳定低CPU占用的前提下,也可能是行业内功能支持最全面,延迟最低的商用级内置RTSP服务方案。

Android平台启动轻量级RTSP服务和推送RTMP,Windows平台分别拉取RTSP流和RTMP流播放,毫秒级延迟体验:

相关博客: