`
bingtears
  • 浏览: 188409 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

RTP协议的报文结构

阅读更多
RTP头格式如图structure所示:

开始12个八进制出现在每个RTP包中,而CSRC标识列表仅出现在混合器插入时。各段含义如下:
①版本(V)
2位,标识RTP版本。
②填充标识(P)
1位,如设置填充位,在包尾将包含附加填充字,它不属于有效载荷。填充的最后一个八进制包含应该忽略的八进制计数。某些加密算法需要固定大小的填充字,或为在底层协议数据单元中携带几个RTP包。
③扩展(X)
1位,如设置扩展位,固定头后跟一个头扩展。
④CSRC计数(CC)
4位,CSRC计数包括紧接在固定头后CSRC标识符个数。
⑤标记(M)
1位,标记解释由设置定义,目的在于允许重要事件在包流中标记出来。设置可定义其他标示位,或通过改变位数量来指定没有标记位。
⑥载荷类型(PT)
7位,记录后面资料使用哪种 Codec , receiver 端找出相应的 decoder 解碼出來。
常用 types:见图ctype所示:


⑦系列号
16位,系列号随每个RTP数据包而增加1,由接收者用来探测包损失。系列号初值是随机的,使对加密的文本攻击更加困难。
⑧时标

32位,时标反映RTP数据包中第一个八进制数的采样时刻,采样时刻必须从单调、线性增加的时钟导出,以允许同步与抖动计算。时标可以让receiver端知道在正确的时间将资料播放出来。
由上图可知,如果只有系列号,并不能完整按照顺序的将data播放出来,因为如果data中间有一段是没有资料的,只有系列号的话会造成错误,需搭配上让它知道在哪个时间将data正确播放出来,如此我们才能播放出正确无误的信息。
⑨SSRC
32位,SSRC段标识同步源。此标识不是随机选择的,目的在于使同一RTP包连接中没有两个同步源有相同的SSRC标识。尽管多个源选择同一个标识的概率很低,所有RTP实现都必须探测并解决冲突。如源改变源传输地址,也必须选择一个新SSRC标识以避免插入成环行源。
⑩CSRC列表
0到15项,每项32位。CSRC列表表示包内的对载荷起作用的源。标识数量由CC段给出。如超出15个作用源,也仅标识15个。CSRC标识由混合器插入,采用作用源的SSRC标识。
  • 大小: 10.6 KB
  • 大小: 35.7 KB
分享到:
评论

相关推荐

    rtp协议客户端实现 java

    1. RTP协议的结构:RTP报文由固定头部和可选扩展头部组成,头部包含了时间戳、序列号、SSRC(同步源标识符)等关键字段,用于数据的同步和完整性校验。 2. RTP与RTCP(Real-time Control Protocol)配合工作:RTP...

    RTP RTCP总结1

    RTP协议报文结构包括报头和有效载荷两部分。报头中包含了几个关键字段,它们是: 1. **版本(Version, V)**:占2位,目前版本号为2,表示RTP协议的版本。 2. **填充标志(Padding, P)**:占1位,如果P=1,意味着...

    一个rtp 协议打报接报的DEMO

    这个DEMO是用C语言编写的,用于演示RTP协议的基本操作,包括发送和接收报文。 RTP协议的核心概念: 1. **报文结构**:RTP报文由固定头部和可选的扩展头部以及负载数据组成。头部包含序列号、时间戳、同步源标识符...

    .NET 解析rtp数据包

    首先,我们需要了解RTP协议的基本结构。RTP数据包由头部和负载两部分组成。头部包含固定的12字节,包括版本(Version)、填充位(Padding)、扩展位(Extension)、CSRC计数器(CSRC Count)、标记位(Marker)、...

    RTP协议学习大总结从原理到代码.rar_7ME_RTP协议学习大总结从原理到代码

    2. **RTP报文结构** RTP报文由固定头部和可选的扩展头部以及负载数据组成。固定头部包含序列号、时间戳、同步源标识符(SSRC)等字段,用于数据排序、检测丢包和同步。 3. **序列号** 序列号用于识别每个RTP...

    NS2新的RTP协议

    1. **RTP协议结构**:RTP报文由一个固定头部和可选的扩展字段组成。头部包含序列号、时间戳、SSRC(同步源标识符)等关键信息,用于接收端正确排序和同步数据包。 2. **RTP工作原理**:发送端将数据封装到RTP包中,...

    rtp协议中文介绍

    通过《RTP协议中文版.doc》和《RTSP流媒体协议.ppt》等文档,你可以深入理解这两种协议的细节,包括它们的报文结构、交互流程、错误处理机制等。而《H264+RTP+发送和接收.pdf》则可能进一步阐述如何将H264编码的视频...

    rtp协议文档.rar

    2. **RTP报文结构**: RTP报文由固定头部和可选的扩展头部以及负载数据组成。固定头部包含序列号、时间戳、同步源(SSRC)标识符等字段,用于确保数据的正确顺序和同步。 3. **序列号**: 每个RTP数据包都有一个...

    3 RTP协议1

    RTP(Real-time Transport Protocol)协议是一种用于实时传输音频、视频和其他时间敏感数据的应用层协议。...理解RTP协议的细节对于开发和调试音视频应用至关重要,因为它涉及到媒体数据的正确传输和同步。

    H264关于RTP协议的实现

    ### H264关于RTP协议的实现:深入解析与技术要点 #### 一、RTP协议在H264视频传输中的角色 H264作为一种高效的视频压缩标准,广泛应用于视频通信、流媒体传输等领域。然而,压缩后的视频数据在网络传输中需要通过...

    实现音频的source filter,里面用到rtp协议的东西.zip

    - **RTP报文结构**:RTP报文包括固定头部、可选的扩展头部和有效负载。头部包含了序列号、时间戳、同步源标识符(SSRC)等关键信息,用于确保数据的正确顺序和同步。 - **RTP与UDP**:RTP通常承载在UDP之上,因为...

    rtcp格式原文.rar_mpeg2 rt_rtcp rtp_rtcp wav_rtp_rtp协议

    RTP协议主要用于传输实时数据,如音频和视频流。它设计的目标是在不可靠的网络环境中提供低延迟的数据传输。RTP头包含时间戳、序列号、源标识符等字段,这些信息用于接收端正确排序和同步数据,以及检测丢失的包。 ...

    RTP协议学习大总结从原理到代码

    RTP协议由两部分构成:RTP数据协议和RTP控制协议(RTCP)。这两部分协同工作,以确保数据传输的质量和效率。 ### RTP数据协议详解 #### 数据报结构 每个RTP数据报包含头部(Header)和负载(Payload)两部分。头部...

    rtp.zip_rtp

    2. RTP报文结构: RTP报文由固定头部和可选的扩展部分组成。头部包含序列号(用于检测丢失和排序)、时间戳(用于同步接收端的播放)、同步源标识符(SSRC)和贡献源标识符(CSRC)等关键字段。 3. RTP源代码分析:...

    rtp rtcp协议实现

    RTP协议的主要目标是为实时数据提供端到端的传输服务,包括低延迟、顺序传送和时间戳,以确保数据的正确播放。RTP不保证数据传输的可靠性,而是依赖于更低层的传输协议(如UDP)来处理丢包和错误。RTP头部包含序列号...

    RTP流传输音视频

    2. **RTP报文结构**: RTP报文由一个固定头部和可选的扩展头部以及数据负载组成。头部包含序列号、时间戳、同步源标识符(SSRC)等字段,用于接收端对数据包进行排序、同步和丢包检测。 3. **RTP和UDP关系**: ...

    基于RTP协议的视频传输系统的研究与设计

    ### 基于RTP协议的视频传输系统的研究与设计 #### 一、引言 随着互联网技术的迅速发展,视频传输系统作为一种重要的多媒体通信手段,已经广泛应用于远程教育、视频会议、在线直播等多个领域。视频传输系统的核心...

    基于RTP(实时传输协议)的客户端服务器的程序

    1. **RTP协议结构**:RTP报文由两部分组成:固定头部和可变负载。头部包含序列号、时间戳、源标识符和Payload类型等字段,用于数据的排序、同步和源识别。可变负载则携带实际的应用数据,如音频帧或视频帧。 2. **...

    rtp.rar_rtp_rtp 接收

    这个"rtp.rar_rtp_rtp 接收"项目可能是为了帮助初学者理解RTP协议的工作原理以及如何实现RTP接收功能。下面将详细讨论RTP协议的基本概念、工作流程、关键组件以及如何实现RTP接收。 1. RTP协议概述: RTP是IETF制定...

    rtp_client

    2. **RTP协议理解**:RTP协议的报文结构包括固定头部和可选的扩展头部,以及负载数据。客户端需要正确解析接收到的RTP数据包,并生成符合规范的RTP数据包进行发送。了解RTP的时间戳、序列号、SSRC(同步源标识符)等...

Global site tag (gtag.js) - Google Analytics