什么是RTSP和WebRTC用于流媒体?

fak*_*442 6 video streaming rtsp video-streaming webrtc

我是流媒体新手.但我必须使用IP摄像头做一个基于用户的流媒体系统.它就像安全摄像头.一个用户将拥有一个流.我的团队认为使用RTSP.他们想知道我们将如何做,rtsp,webrtc,rtp是什么.我正在研究,我想问你.那么RTSP到底是什么?一些IP摄像头说支持WebRTC,这是什么?这与RTSP兼容吗?哪个是基于用户的流媒体的最佳协议?

Mic*_*ick 10

RTSP是一种流控制协议,用于控制流媒体服务器(whoami的远程控制类比在另一个答案中是一种非常好的方式来考虑它).它定义了如何打包数据以对其进行流式处理以及连接的两端应如何表现以支持协议.

为了清楚起见,它实际上并不传输媒体数据--RTP(实时传输)协议负责处理这个问题.

更复杂的是,RTCP(Real Tine Control Protocol)也存在 - 尽管名称如此,其主要目的是收集RTP会话的统计信息.

SDP(会话描述协议)在此上下文中也很有用 - 它包含有关流的会话参数的信息,并由RTSP等使用.示例参数包括会话名称,会话可用的时间,URI等.

WebRTC是一个项目和一组IETF草案,为浏览器提供一组API以支持"Rich"Web通信.

简单来说,WebRTC可能会提供一个API,允许Web程序员(即使用Javascript创建基于浏览器的客户端的人)使用RTSP等协议来传输数据.

请注意上面的"可能"一词 - 据我所知,目前WebRTC不支持RTSP,尽管有一些讨论:


Who*_*ami 10

让我解释一下我的最佳.如果我觉得你错了,请纠正我.

流媒体数据:

您正在将媒体数据(音频/视频)从一端传输到另一端.

RTSP/RTP/UDP,RTCP

RTSP它是一种流媒体协议,它的工作方式类似于遥控器.想想你可以用遥控器做什么.播放,暂停等等,这就是RTSP实现和照顾的内容.那么,谁在传输数据呢?这里RTP出现了.RTP是RTSP使用的传输协议.RTP使用UDP.啊..我知道什么是UDP/TCP,所有的RTP来自哪里?我们关心的UDP和TCP之间存在一个核心差异.在UDP中,您无法跟踪是否存在数据包丢失,因此也无法跟踪RTP.RTP在UDP上工作,但提供跟踪丢失数据包的工具,以便接收器可以相应地执行操作.例如,如果接收端有h.264数据包传输丢包,他可以请求发送方给出完整的'I'帧.您可以假设RTCP只是一种控制协议,可与RTP一起使用以进行QoS度量.

好的,到目前为止一切顺利.现在,我们脑子里出现了几个问题.一切都在浏览器中.是的,我们可以将媒体流式传输到浏览器吗?是的,这就是WebRTC的用武之地.WebRTC再次使用RTP协议.因此,webRTC是一种标准,有助于从/向浏览器传输媒体流.此外,它还具有下面提到的其他功能.

1)它是基于浏览器的.

2)一个很大的区别是在TURN/STURN服务器的帮助下便于Peer to Peer网络连接.

3)在构建编解码器支持.

4)它也支持任意数据传输.;)

希望它提供一些基本的想法.