美文网首页
视音频入门二 协议&补充介绍

视音频入门二 协议&补充介绍

作者: 亡灵诅咒 | 来源:发表于2019-09-30 07:47 被阅读0次

    致敬雷神

    拜读笔记
    原文出处:https://blog.csdn.net/leixiaohua1020/article/details/18893769
    补充出处:https://blog.csdn.net/tttyd/article/details/12032357

    RTP

    • 作用:
      用于互联网上针对多媒体数据流的一种传输层协议。RTP协议详细说明了在互联网上传递视音频的标准数据包格式。
    • 使用场景:
      • 常用于流媒体协同(配合RTCP协议)、视频会议、一键通系统(配合H.323或SIP)
      • RTP协议和RTP控制协议RTCP一起使用,它是建立在UDP协议之上的。
    • 缺点:
      • RTP本身并没有提供按时发送机制或其他服务质量(QoS)保证,他依赖于底层服务去实现这一过程。
      • RTP并不保证传送或防止无序传送,也不确定底层网络的可靠性。
    • 优点
      • RTP实行有序传送,RTP中的序列号允许接收方重组发送方的包序列,同时序列号也能用于决定适当的报位置(如:在视频解码中,就不需要顺序解码)
    • 组成部分
      • RTP由两个紧密连接部分组成
        • RTP - 传送具有实时属性的数据
        • RTP控制协议(RTCP)- 监控服务质量传送正在进行的会话参与者的相关信息

    RTCP

    • 介绍
      • 实时传输控制协议(Real-time Transport Control Protocol或RTP Control Protocol)。是实时传输协议(RTP)的一个姊妹协议
    • 作用
      • RTCP 为RTP媒体流提供信道外控制。
      • RTCP 本身并不传输数据,但和RTP一起协作将多媒体数据打包和发送。
      • RTCP 定期在流多媒体会话参与者之间输出控制数据。
      • RTCP 主要为RTP所提供的服务质量提供反馈
      • RTCP 手机相关媒体链接的统计信息(传输字节数,传输分组数,丢失分组数,jitter,单向和双向网络延迟等等)
      • RTCP 本身不提供数据加密或身份认证

    SRTP & SRTCP

    • 介绍
      • 安全实时传输协议(Secure Real-time Transport Protocol或SRTP)是在实时传输协议(Real-time Transport Protocol或RTP)基础上所定义的一个协议
        • 作用:为单播和多播应用程序中的实时传输协议的数据提供加密、消息认证、完整性保障和重放保护。
    • 安全实时传输协议同样也有一个伴生协议,他被成为安全实时传输控制协议(Secure RTCP或SRTCP)

    RTSP

    • 介绍

      • RTSP是用来控制声音或音响的多媒体串流协议,并允许同时多个串流需求控制,传输时所用的网络通讯协议并不在其定义的范围内,服务器端可以自行选择使用TCP或UDP来传送串流内容,他的语法和运作和HTTP1.1类型,但并不特别强调时间同步,所以比较能容忍网络延迟。而前面提到的允许同时对个串流需求控制,除了可以降低服务端的网络用量,更进而支持多方视讯会议。因为与HTTP1.1的运作方式相似,所以代理服务器《Proxy》的快取功能《Cache》也同样适用于RTSP,并因RTSP具有重新导向功能,可视实际负载情况来转换提供服务的服务器,以避免过大的负载集中于同一服务器而造成延迟
    • 作用

      • 定义了一对多应用程序如何有效的通过IP网络传送多媒体数据。RTSP提供了一个可扩展框架,使实时数据,如音频和视频的受控、点播成为可能。数据源包括现场数据与存储在剪辑中的数据。该协议目的在于控制多个数据发送链接,为选择发送通道,如UDP、多播UDP与TCP提供途径,并为选择基于RTP上发送机制提供方法
    • RTSP和HTTP区别

      • RTSP引入了几种新的方法,比如DESCRIBE、PLAY、SETUP等,并且有不同的协议标识符,RTSP为rtsp 1.0. HTTP为http 1.1;
      • HTTP是无状态的协议,而RTSP为每个会话保持状态;
      • RTSP协议的客户端和服务器端都可以发送Request请求,而在HTTPF协议中,只有客户端能发送Request请求。
      • 在RTSP协议中,载荷数据一般是通过外带方式来传送的(除了交织的情况),及通过RTP协议在不同的通道中传来载荷数据。而HTTP协议的载荷数据都是通过带内方式传送的。比如请求的网页数据是在回应的消息体中携带的。
      • 使用 ISO10646(UTF-8)而不是ISO8859-1,以配合当前HTML的国际化;
      • RTSP使用URI请求时包含绝对URI。而由于历史原因造成的向后兼容性问题,HTTP/1.1只在请求中包含绝对路径,把主机名放在单独的标题域中;
    • RTSP 和 RTP的关系

      • RTP不像http和ftp可完整的下载整个影视文件,他是以固定的数据率在网络上发送数据,客户端也是按照这种速度观看影视文件,当影视画面播放过后,就不可以在重复播放,除非重新向服务器端要求数据。
      • RTSP与RTP最大的区别在于:RTSP是一种双向实时数据传输协议,他允许客户端向服务器端发送请求,如回放、快进、倒退等操作。当然,RTSP可基于RTP来传送数据,还可以选择TCP、UDP、组播UDP等通道来发送数据,具有很好的扩展性。他是一种类似于http协议的网络应用层协议。(目前的应用:服务器端实时采集、编码并发送两路视频、客户端接收并显示两路视频。由于客户端不必对视频数据做任何回放、倒退等操作,可直接采用UDP+RTP+组播实现)
      • RTSP+RTP较少用于互联网视音频传输。互联网视频服务通常采用TCP作为其流媒体的传输层协议,因而想RTMP、MMS、HTTP这类的协议广泛用于互联网视音频服务之中。这类协议不会发生丢包,因而保证了视频的质量,但是传输的效率会相对低一些。
    20130925233633687.jpeg 20130925235918343.jpeg

    RTMP/RTMPS

    • 介绍
      • RTMP(Real Time Messaging Protocol)实时消息传送协议是为Flash播放器和服务器之间音频、视频和数据传输开发的开放协议
    • 作用
      • 被Flash用于对象、视频、音频的输送,这个协议建立在TCP协议或轮询HTTP协议之上。RTMP协议就像一个用来装数据包的容器,这些数据既可以是AMF格式的数据,也可以是FLV中的视音频数据,一个单一的连接可以通过不同的通道传输多路网络流,这些通道中的包都是按照固定大小的包传输的

    MMS

    • 介绍
      • 微软媒体服务器协议(Microsoft Media Server Protocol),用来访问并流式接收Windows Media服务器中.asf文件的一种协议。
    • 作用
      • 用于访问Windows Media发布点上的单播内容。MMS是连接Windows Media单播服务的默认方法。MMS的预设端口号是1755

    HLS

    • 介绍
      • HLS(HTTP Live Streaming)是苹果公司基于HTTP的流媒体传输协议,可实现流媒体的直播和点播。主要应用在iOS系统。HLS点播基本上就是常见的分段HTTP点播,不同的在于,他的分段特别的小。
      • 相对于常见的流媒体直播协议,例如RTMP协议、RTSP协议、MMS协议等,HLS直播最大的不同在于,直播客户端获取到的,并不是一个完整的数据流。HLS协议在服务器端将直播数据流存储为连续的、很短时长的媒体文件(MPEG-TS格式),而客户端则不断的下载并播放这些小文件,因为服务器端总是会将最新的直播数据生成新的小文件,这样客户端只要不停的按顺序播放从服务器获取到的文件,就实现了直播。由此可见,基本上可以认为,HLS是以点播的技术方式来实现直播。由于数据通过HTTP协议传输,所以完全不用考虑防火墙或者代理的问题,而且分段文件的时长很短,客户端可以很快的选择和切换码率,以适应不同带宽条件下的播放。不过HLS的这种技术特点,决定了它的延迟一般总是会高于普通的流媒体直播协议。

    相关文章

      网友评论

          本文标题:视音频入门二 协议&补充介绍

          本文链接:https://www.haomeiwen.com/subject/swxtpctx.html