流服务器中的RTP或RTSP有什么区别?
-
29-09-2019 - |
题
我正在考虑开发流服务器,并且有以下问题,请通过RTSP(示例URL:: rtsp://192.168.0.184/myvideo.mpg
) 或者 RTP
(示例URL: rtp://192.168.0.184
).
正如我所理解的那样, RTSP
服务器主要用于流数已经存在的文件,即,而不是实时。 RTP
服务器用于广播。
有人纠正我,如果我错了,对吗?
我想开发一台服务器以在计算机屏幕上广播实时内容,即在流中广播时显示。
其他提示
AFAIK,RTSP根本不会传输流,它只是带有播放和停止功能的带外控制协议。
UDP上的RAW UDP或RTP是流的传输协议,就像TCP上的RAW TCP或HTTP一样。
为了能够通过给定传输协议传输某个程序, 封装方法 必须为您定义 容器格式. 。例如,TS容器可以通过UDP传输,但Matroska不能。
几乎所有东西都可以通过TCP运输。
(事实是 编解码器 您是否可以间接使用重要的事情,因为它限制了您可以使用的容器格式。)
一些基本知识:
RTSP服务器可用于死源和实时源。 RTSP协议为您提供命令(例如VCR遥控器),功能取决于您的实现。
RTP是用于实时运输音频和视频的实时协议。使用的运输可以是单播,多播或广播,具体取决于运输地址和端口。除了运输RTP为您提供很多事情,例如包装,重新排序,抖动控制,QoS,支持唇彩的支持.....
在您的情况下,如果您想广播流服务器,则需要RTSP(用于控制)以及RTP(广播音频和视频)
首先,您可以浏览由 Live555
我听到你的痛苦。我现在正在(几年后)进行此操作。从我学到的知识中,您可以将RTSP视为“ VCR控制器”,该协议允许您指定要播放的流(演示)(演示),然后将向您发送媒体描述,然后您可以使用RTSP播放,停止,暂停并记录远程流。媒体本身会超越RTP。 RTSP通常通过不同的插座或通信层实现。尽管它只是一个协议,但通常是由服务器通过套接字实现的。对于实时流,您请求的RTSP流只是流的名称。它无需参考服务器上的文件,服务器的RTSP实现可以解析该流,整理实时图,然后为该流名提供SDP(Description)。但是,这当然是针对RTSP服务器实现方式的特定特定的。对于“实时”流,仅使用RTP可能会更简单,但是您需要一种将SDP从RTP服务器传输到想要播放该流的客户端的方法。
我认为那是正确的。 RTSP可以内部使用RTP。
RTSP(实际上RTP)可用于流视频,以及许多其他类型的媒体,包括实时演示。 RTSP只是用于设置RTP会话的协议。
有关所有详细信息,您可以在以下地址上查看我的开源RTSP服务器实现: https://net7mma.codeplex.com/
或我的文章 @ http://www.codeproject.com/articles/507218/managed-media-aggregation-using-rtsp-and-rtp
它支持重新传输流以及流的动态创建,实施各种RFC,并且图书馆可以实现更好的性能和更少的内存,而不是FFMPEG以及运输层中的几乎任何其他解决方案,从而使其成为一个很好的候选者大多数情况的集中访问点。