rtcp

[RK1108][Linux3.1]学习笔记 - 流媒体传输协议

余生颓废 提交于 2020-03-04 22:10:02
平台 内核版本 RK1108 Linux3.1 文章目录 流媒体服务器架构 RTSP协议 RTSP 消息 请求消息 应答消息 交互流程 RTP协议 RTP 包头格式 H.264 编码技术 RTCP协议 接收者报告 源描述包(SDES) 流媒体服务器架构 在网络带宽上传输实时的视音频流媒体数据时要求传输实时性必须远高于传输可靠性。但是,由于互联网络并不是完全的等时系统,在数据包传送的过程中可能会出现延迟、抖动或不按顺序到达的情况,这就需要在传输层之上添加额外的流媒体传输及控制协议来解决这些问题。于是 IETF 提出了 RTSP 和 RTP `RTCP 等一系列新的协议来满足实时数据的传输要求。根据这些协议的功能特点,可将它们分为数据传输协议和控制协议两部分。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200304111631647.png) 在实际的 VLC`画面中各协议: RTSP 协议标准化了客户端与服务器的信令和信息交互; RTP 协议则完成了组合、分片或直接封装已编码压缩的视频数据的工作,并将之交予底层网络发送至客户端; RTCP 协议负责统计和发送数据包接收情况,辅助客户端、服务器和第三方监控系统即时应对网络拥塞,控制网络流量,提高服务质量。 网络摄像机首先采集摄像头中的视频数据,然后按帧对其进行 H.264 软件编码,最后交由

RTP、RTCP及媒体流同步

我是研究僧i 提交于 2020-02-28 20:37:37
转自:http://blog.163.com/liu_nongfu/blog/static/19079414220139169225333/ 一、流媒体简介   流媒体是指在internet中使用流媒体技术的连续时基媒体,例如视频、音频或多媒体文件。流式传输方式是将音视频、动画等多媒体文件经过压缩后分成一个个小数据包,当用户端发出请求时,由服务器端向用户端实时、连续传送这些小数据包,动态变化的网络可能使各个包选择不同的路由,故到达用户端的时间延迟也就不同。在用户端用播放器播放时,需要为接收数据开辟缓存区,以弥补时延和时延抖动的影响和保证数据包传输顺序的正确,经解压缩后,只需要在缓冲区充满前等待几秒钟,就可以连续观看。而同时,后续数据包继续在后台从服务器端以稳定的速率向客户端发送,不影响前台播放。所以从理论上讲,播放前的延时主要是由于播放器接收、处理前几个数据包引起的,一旦播放就能够保证连续性和稳定性。流式传输的实现不仅需要高效的压缩算法和缓存,而且需要合适的传输协议。由于tcp需要较多的开销,不太适合传输实时数据。在流式传输的实现方案中,一般采用http/tcp来传输控制信息,而用RTP/UDP来传输实时视音频数据。实现流式传输一般都需要专用的媒体服务器和媒体播放器。 二、流媒体传输的网络协议:RTP与RTCP介绍 1.实时传输协议RTP( Real-time Transport

问题:dtx打开后订阅没有声音

非 Y 不嫁゛ 提交于 2020-02-07 00:06:26
未打开dtx时: 推流: v=0 o=- 8155467687897462485 2 IN IP4 127.0.0.1 s=- t=0 0 a=group:BUNDLE 0 a=msid-semantic: WMS stream_id m=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 102 0 8 106 105 13 110 112 113 126 c=IN IP4 0.0.0.0 a=rtcp:9 IN IP4 0.0.0.0 a=ice-ufrag:ujEi a=ice-pwd:tgWqJZt1eWauIk+z7I62NjiE a=ice-options:trickle a=fingerprint:sha-256 26:9B:97:4E:53:FB:DD:C5:97:8D:62:50:1D:88:FD:CC:AE:1C:75:CC:64:47:51:A8:56:4F:55:6B:31:F2:20:15 a=setup:actpass a=mid:0 a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level a=extmap:2 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time a=extmap:3 http://www

rtp,rtsp,rtcp的区别

我只是一个虾纸丫 提交于 2020-01-19 22:57:40
RTP(Real-time Transport Protocol)是用于Internet上针对多媒体数据流的一种传输协议。RTP被定义为在一对一或一对多的传输情况下工作。其目的是提供时间信息和实现流同步。但RTP通常使用UDP来传送数据。但RTP也可以在TCP或ATM等其他协议之上工作。当应用程序开始一个RTP会话时将使用两个端口:一个给RTP一个给 RTCP。RTP本身并不能为接顺序传送数据包提供可靠的传送机制。也不提供流量控制或拥塞控制。它依靠RTCP提供这些服务。通常RTP算法并不作为一个独立的网络层来实现。而是作为应用程序代码的一部分。实时传送控制协议RTCP. RTCP(Real-time Transport Control Protocol)和RTP提供流量控制和拥塞控制。在RTP会话期间,各参与者周期性地传送RTCP包.RTCP包中含有已发送的数据包的数量、丢失的数据包的数量等统计资料.因此,服务器可以利用这些信息动态地改变传输速率,甚至改变有效载荷类型。RTP和RTCP配合使用,它们能以有效的反馈和最小的开销使传输效率最佳化。因而特别适合传送网上的实时数据。 RTSP实时流协议RTSP(Real-time Streaming Protocol)是由Real Networks和Netscape共同中提出的。该协议定义了一对多应用程序如何有效地通过lP网络传送多媒体数据

TCP、UDP、RTP(RTCP)异同与区别

独自空忆成欢 提交于 2020-01-19 01:00:30
OSI七层模型 OSI 中的层 功能 TCP/IP协议族 应 用层 文件传输,电子邮件,文件服务,虚拟终 端 TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet 表示层 数据格式化,代码转换,数据加密 没有协议 会话 层 解除或建立与别的接点的联系 没有协议 传输层 提供端对端的接口 TCP,UDP (RTP) 网 络层 为数据包选择路由 IP,ICMP,RIP,OSPF,BGP,IGMP 数据链路层 传输有地址的帧以及错误检测功能 SLIP,CSLIP,PPP,ARP,RARP,MTU 物 理层 以二进制数据形式在物理媒体上传输数据 ISO2110,IEEE802,IEEE802.2 ************************************************************************************************************************************ TCP/IP五层模型的协议 应用层 传输层:四层交换机、也有工作在四层的路由器 网络层:路由器、三层交换机 数据链路层:网桥(现已很少使用)、以太网交换机(二层交换机)、网卡(其实网卡是一半工作在物理层、一半工作在数据链路层) 物理层:中继器、集线器、还有我们通常说的双绞线也工作在物理层 ****************

RTCP receiver report sending interval

≯℡__Kan透↙ 提交于 2020-01-04 13:39:03
问题 What is the sending interval of RTCP Receiver Report? In RFC 3550 I was only able to find computation the RTCP Transmission Interval for the server. But as a client I have no idea about members and senders (or do I?). So I'm a little bit confuse how to calculate the interval or should I send RTCP RR in periods or should I only send RR packet when SR is received? 回答1: The RTP and RTCP protocols don't make a distinction between client and server. Both are members within the RTP session and both

RTCP receiver report sending interval

混江龙づ霸主 提交于 2020-01-04 13:38:58
问题 What is the sending interval of RTCP Receiver Report? In RFC 3550 I was only able to find computation the RTCP Transmission Interval for the server. But as a client I have no idea about members and senders (or do I?). So I'm a little bit confuse how to calculate the interval or should I send RTCP RR in periods or should I only send RR packet when SR is received? 回答1: The RTP and RTCP protocols don't make a distinction between client and server. Both are members within the RTP session and both

RTCP receiver report sending interval

蓝咒 提交于 2020-01-04 13:38:27
问题 What is the sending interval of RTCP Receiver Report? In RFC 3550 I was only able to find computation the RTCP Transmission Interval for the server. But as a client I have no idea about members and senders (or do I?). So I'm a little bit confuse how to calculate the interval or should I send RTCP RR in periods or should I only send RR packet when SR is received? 回答1: The RTP and RTCP protocols don't make a distinction between client and server. Both are members within the RTP session and both

How to keep RTSP session alive?

ⅰ亾dé卋堺 提交于 2020-01-01 18:02:54
问题 I tried streaming on Google nexus S (2.3.7), HTC Desire (2.3.3), and Samsung Galaxy (3.2). And only Google Nexus has RTSP session timeout issue. I read up on some threads about this problem. It seems like I'll have to send RTCP request every second to keep the session alive, or I'll just send RTSP "OPTION" request which will basically do nothing but keep alive for my app. Could anyone give me a head start on how to generate that request? I have no experience dealing with RTCP before. 回答1:

RTCP 包中的 NTP 时间

别来无恙 提交于 2019-12-26 12:21:04
RTP/RTCP的时间同步机制 转自:http://blog.csdn.net/leesphone/article/details/5571972 RTP支持传送不同codec的steaming,不同codec的clock rate的也不一样,不同的media之间需要依靠RTCP进行同步。这里简单介绍一下他们的机制。 在每个RTCP SR包中对应有一个RTP时间和一个NTP时间,它表达的意思很明确,那就是这个RTP时间对应的绝对时间, 不同media的RTP时间尽管不同,但可以通过NTP时间映射到同一个时间轴上,从而实现同步。 如下图所示,RTP session 1 send H264 使用90,000HZ,而RTP session 2 send G.711 使用8,000HZ: 最近遇到进行视频流播放时间戳的匹配问题。学到了一些新方法,记录一下。 运行播放IP camera的软件,用wireshark抓包软件,可看到RTSP数据包的传输过程。 因为抓到的数据包是用UDP传输的,需要选择特定协议进行详细解析,具体步骤为: 选择一行UDP数据包数据; 右击 -> 选择Decode As -> 针对所需端口号,选择相应的应用层协议,此处是RTSP。 这样之后就能看到详细的RTSP包数据传输过程,由下图可见。 观察RTCP的Send Report包,可以发现其包含两个时间