博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
RTP实时传输协议
阅读量:7222 次
发布时间:2019-06-29

本文共 814 字,大约阅读时间需要 2 分钟。

RTP协议是包括一对协议:RTP和RTCP。 RTP传输数据,RTCP传输控制信息。 一般基于UDP,RTP使用偶数端口,RTCP使用下一个奇数端口。

层次关系: APP -> RTP -> UDP -> IP

1、RTP

RTP提供针对多媒体应用的端到端传输能力,主要用于流媒体的传输,包括音频和视频;  需要提供一些多媒体应用的特有功能:

(1)协商机制。解决音视频格式众多的问题。

(2)数据时间指示。让接受者知道数据包的时序关系,应用可以通过playback buffer来做平滑,还可以做音视频同步等。

(3)数据丢失指示。因为UDP不可靠,应用根据丢失数据的具体情况,做不同的操作,例如:I/B/P帧采取不同处理方式;动态调整编解码格式或分辨率,以便减少数据量。

(4)帧边界指示。一系列包的集合对应一帧,所以对一个完整的帧进行处理,比对单个包进行处理,会更合适。例如:丢弃一个完整的帧,只会卡顿,不会花屏;缩短或拉长两个单词之间的间隔,不会被用户察觉,但是改变某个单词本身的长度,体验就不好了。

上述功能,RTP的实现方式:

(1)由RTSP协商完成;

(2)(3)RTP Header有12字节的必填字段,其中包括时标和序号。时标是32位数值,是两次采样之间的间隔,用ticks表示,每个tick的时长在RTP配置文件或有效荷载格式中说明。 序号是16位数值,每个RTP包有一个序号。

2、RTCP

RTCP提供与数据流想联系的控制流。主要有三个功能:

(1)反馈应用程序和网络的性能;

(2)关联和同步来自同一个发送方的不同媒体流;

(3)运行发送方标识符,用于GUI显示。

 

参考资料:《计算机网络》《Computer Networks》,Larry L. Peterson, Bruce S.Davie。

 

转载于:https://www.cnblogs.com/ruanchao/p/10739371.html

你可能感兴趣的文章
软件需求十步走读书笔记3
查看>>
电信SMS短信SOAP发送格式(C#手工组成.)
查看>>
Nginx配置之rewrite、proxy_pass、upstream、location
查看>>
c#学习笔记线程
查看>>
Spring AOP动态获取函数参数中的值
查看>>
文件系统的简单操作
查看>>
xtrabackup 安装
查看>>
【数据结构作业心得】4-1 指针笔记
查看>>
NTT学习笔记
查看>>
online_judge_1051
查看>>
Mac与Widow下编译与运行java文件引入多个外部jar包
查看>>
通过Bottledwater同步PostgreSQL中的数据变化到Kafka消息队列
查看>>
洛谷P4112 最短不公共子串
查看>>
Every Tom,Dick and Harry. 不管张三李四。
查看>>
Ubuntu开机显示器报错
查看>>
怎样查w3wp.exe对应的IIS站点
查看>>
USACO 2.1
查看>>
Python--常用的内置函数
查看>>
RabbitMQ入门-消息订阅模式
查看>>
【ZJOI2016】线段树
查看>>