轻量级RTSP服务模块和RTSP推流模块适用场景区别

好多开发者一直搞不清轻量级RTSP服务SDK和RTSP推流SDK的区别(Github下载地址),以下是相关区别:

1. 轻量级RTSP服务模块:轻量级RTSP服务解决的核心痛点是避免用户或者开发者单独部署RTSP或者RTMP服务,实现本地的音视频数据(如摄像头、麦克风),编码后,汇聚到内置RTSP服务,对外提供可供拉流的RTSP URL,轻量级RTSP服务,适用于内网环境下,对并发要求不高的场景,支持H.264/H.265,支持RTSP鉴权、单播、组播模式,考虑到单个服务承载能力,我们支持同时创建多个RTSP服务,并支持获取当前RTSP服务会话连接数。

以下是接口详解(以Android平台为例):

Android内置轻量级RTSP服务SDK接口详解

调用描述

接口

接口描述

常规功能

Android RTMP推送端所有功能依然有效,亦可同时推送RTMP

SmartRTSPServerSDK

初始化RTSP Server

InitRtspServer

Init rtsp server(和UnInitRtspServer配对使用,即便是启动多个RTSP服务,也只需调用一次InitRtspServer,请确保在OpenRtspServer之前调用)

创建一个rtsp server

OpenRtspServer

创建一个rtsp server,返回rtsp server句柄

设置端口

SetRtspServerPort

设置rtsp server 监听端口, 在StartRtspServer之前必须要设置端口

设置鉴权用户名、密码

SetRtspServerUserNamePassword

设置rtsp server 鉴权用户名和密码, 这个可以不设置,只有需要鉴权的再设置

获取rtsp server当前会话数

GetRtspServerClientSessionNumbers

获取rtsp server当前的客户会话数, 这个接口必须在StartRtspServer之后再调用

启动rtsp server

StartRtspServer

启动rtsp server

停止rtsp server

StopRtspServer

停止rtsp server

关闭rtsp server

CloseRtspServer

关闭rtsp server

UnInit rtsp server

UnInitRtspServer

UnInit rtsp server(和InitRtspServer配对使用,即便是启动多个RTSP服务,也只需调用一次UnInitRtspServer)

SmartRTSPServerSDK供Publisher调用的接口

设置rtsp的流名称

SetRtspStreamName

设置rtsp的流名称

给要发布的rtsp流设置rtsp server

AddRtspStreamServer

给要发布的rtsp流设置rtsp server, 一个流可以发布到多个rtsp server上,rtsp server的创建启动请参考OpenRtspServer和StartRtspServer接口

清除设置的rtsp server

ClearRtspStreamServer

清除设置的rtsp server

启动rtsp流

StartRtspStream

启动rtsp流

停止rtsp流

StopRtspStream

停止rtsp流

2. RTSP推流模块:RTSP推流模块,和RTMP推流模块类似,适用于内网或公网环境下,主要适用于第三方RTSP服务对接,如darwin stream server,或者第三方RTSP服务平台,如视频分析平台等特定场景的服务器,支持H.264/H.265,支持TCP、UDP传输模式设定,也支持鉴权服务,RTSP协议的优势主要在于UDP这块,但是UDP数据包,公网容易被block住,而且,网络不稳定容易丢包,所以,能用RTMP推流的场景,一般建议走RTMP,需要特定系统对接的,再走RTSP。

以下是接口详解(以Android平台为例):

调用描述

接口

接口描述

设置推送RTSP传输方式

SetPushRtspTransportProtocol

transport_protocol:1表示UDP传输rtp包; 2表示TCP传输rtp包

设置推送RTSP的URL

SetPushRtspURL

设置推送RTSP的URL

开始RTSP推送

StartPushRtsp

启动推送RTSP流

停止RTSP推送

StopPushRtsp

停止推送RTSP流

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/553149.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何实现多路海康大华等RTSP数据转RTMP推送

一个好的转发模块,首先要低延迟!其次足够稳定、灵活、有状态反馈机制、资源占用低,跨平台,最好以接口形式提供,便于第三方系统集成。 以Windows平台为例,我们的考虑的点如下 1. 拉流:通过RTSP…

如何在RTSP/RTMP直播过程中加入SEI扩展数据发送和接收解析

在直播系统中,除了直播音视频之外,有时候还想从主播端发布文本信息等,这些信息可以不通过视频传输通道发送给用户播放端,但如果传输的数据想和视频保持精准同步,那最好的办法就是这些信息和视频数据打包在一起传输&…

如何拉取公网RTSP/RTMP流在内网多客户端播放

好多情况下,一路RTSP或RTMP网络流过来后,想共享给更多局域网内的客户端播放,一般来说,有两种设计方案: 1. 拉取的RTSP或RTMP流,回调后的数据,转推RTMP服务器,内网部署一台RTMP服务器…

轻量级RTSP服务存在的意义

为什么要设计轻量级RTSP服务 轻量级RTSP服务解决的核心痛点是避免用户或者开发者单独部署RTSP或者RTMP服务。 轻量级RTSP服务可满足内网无纸化/电子教室等内网超低延迟的低并发需求,避免让用户配置单独的服务器,大牛直播SDK在推送端发布了轻量级RTSP服…

Windows平台RTMP/RTSP直播推送模块设计和使用说明

开发背景 好多开发者一直反馈,Windows平台,做个推屏或者推摄像头,推RTMP或者RTSP出去,不知道哪些功能是必须的,哪些设计是可有可无的,还有就是,不知道如何选技术方案,以下是基于我们…

跨平台低延迟的RTMP/RTSP直播播放器设计实现

开发背景 2015年,当我们试图在市面上找一款专供直播播放使用的低延迟播放器,来配合测试我们的RTMP推送模块使用时,居然发现没有一款好用的,市面上的,如VLC或Vitamio,说白了都是基于FFMPEG,在点…

如何实现RTMP推送Android Camera2数据

Camera2简介 在Google 推出Android 5.0的时候, Android Camera API 版本升级到了API2(android.hardware.camera2), 之前使用的API1(android.hardware.camera)就被标为 Deprecated 了。 Camera API2相较于API1有很大不同, 并且API2是为了配合HAL3进行使用的, API2有很多API1不…

面向内网无纸化会议/智慧教室/实时同屏,组播还是RTMP?

一、背景 为满足内网无纸化/电子教室等内网超低延迟需求,避免让用户配置单独的服务器,我们研发了轻量级RTSP服务开发包。 单播不再赘述,这里重点介绍下我们的组播技术方案: 组播解决的主要痛点是服务器部署和带宽占用问题&…

Windows平台下如何实现Unity3D下的RTMP推送

好多开发者苦于很难在unity3d下实现RTMP直播推送,本次以大牛直播SDK(Github)的Windows平台RTMP推送模块(以推摄像头为例,如需推屏幕数据,设置相关参数即可)为例,介绍下unity3d的RTMP…

D3D还是GDI? Windows平台播放RTSP或RTMP渲染模式比较

先说结论,Windows平台播放渲染这块,支持D3D的前提下,优先D3D,如果检测到不支持D3D,数据回调上来,GDI模式绘制。 相比GDI模式,D3D绘制更细腻,绘制效率更高,CPU占用低&…

变废为宝:使用废旧手机实现实时监控方案

随着手机淘汰的速度越来越快,大多数手机功能性能很强劲就不再使用了,以大牛直播SDK现有方案为例,本文探讨下,如何用废旧手机实现实时监控方案(把手机当摄像头做监控之用): 本方案需要准备一个手…

轻量级RTSP服务和内置RTSP网关的区别和联系

好多开发者疑惑,什么是内置RTSP网关,和轻量级RTSP服务又有什么区别和联系?本文就以上问题,做个简单的介绍: 轻量级RTSP服务 为满足内网无纸化/电子教室等内网超低延迟需求,避免让用户配置单独的服务器&am…

内网无纸化会议/智慧教室实时同屏RTSP组播技术方案思考

内网环境下,为了满足内网无纸化/电子教室等内网超低延迟需求,避免让用户配置单独的服务器,好多开发者希望有RTSP的技术方案,用于小并发场景,特别是在组网环境好的有线环境下,使用RTSP服务配合组播&#xff…

Windows平台真实时毫秒级4K H264/H265直播技术方案探讨

背景 在刚提出4K视频的时候,大多数人都觉得没有必要,4K的出现,意味着更高的硬件规格和传输要求,1080P看的很爽、很清晰,完全满足了日常的需求。随着电视的尺寸越来越大,原本1080P成像已经无法满足人们对于…

跨平台屏幕/摄像头RTMP推流模块设计要点

经常有企业或开发者有这样的疑惑,明明看到网上的demo,一个RTMP推送,五六个接口就搞定了,你们咋就搞得这么复杂? 以大牛直播SDK的(Github)Windows RTMP推流为例,我们的接口要100多个…

Android平台Camera2数据如何对接RTMP推流到服务器

1. Camera2架构 在Google 推出Android 5.0的时候, Android Camera API 版本升级到了API2(android.hardware.camera2), 之前使用的API1(android.hardware.camera)就被标为 Deprecated 了。 Camera API2相较于API1有很大不同, 并且API2是为了配合HAL3进行使用的, API2有很多API…

IE浏览器下如何低延迟播放RTSP或RTMP流

首先,虽然本文是介绍IE浏览器下OCX控件播放RTSP或RTMP,但这种方式并不推荐,毕竟它只能用于IE浏览器环境下,局限太大,而且随着微软IE浏览器的更新,不确定后续支持情况。当然,话说回来&#xff0c…

Windows平台RTMP播放器/RTSP播放器如何在播放窗口添加OSD文字叠加

好多开发者在做Windows平台特别是单屏多画面显示时,希望像监控摄像机一样,可以在播放画面添加OSD台标,以实现字符叠加效果,大多开发者可很轻松的实现以上效果,针对此,本文以大牛直播SDK (Github…

Windows平台Unity3d下如何同时播放多路RTSP或RTMP流

好多开发者在做AR、VR或者教育类产品时,苦于如何在windows平台构建一个稳定且低延迟的RTSP或者RTMP播放器,如果基于Unity3d完全重新开发一个播放器,代价大、而且周期长,不适合快速出产品,我们认为当前最好的方式就是集…

Vscode —— 解决Vscode终端无法使用npm的命令的问题

在cmd中可以正常执行npm -v等指令,但是在vs code终端中,无法执行npm -v,node -v等指令 出现报错 解决办法👇 方法一:【右键单击Vscode】以【管理员身份运行】,【重启Vscode】 方法二:①【用户变量】的【path】添加npm所在路径的…