目录
流媒体协议详解
RTSP:实时流式协议
RTCP:实时运输控制协议
RTP:实时运输协议
H.264
流媒体协议详解
RTSP:实时流式协议
由IETF MMusic小组开发,已成为互联网建议标准[RFC 2326]。RTSP本身并不传送数据,而仅仅是是媒体播放器能控制多媒体流的传送,暂停播放,快进快退等。实际媒体数据的传输可以用RTP协议或其他专用协议。
RTSP以客户-服务器方式工作,它是一个应用层的多媒体播放控制协议。它和Http协议有些相似,但它不像Http,而是有状态的,而且可以在TCP和UDP上传输。
默认端口554。
- 有效载荷类型:7位,指出后面的RTP数据的媒体格式,让接收应用知道如何处理。如音频:a律PCM(8), G.722(9); 视频:JPEG(26), H.264(96)
- 序号:每发送一个RTP分组,其序号加1。初始值是随机的。
- 时间戳:反映的是RTP分组中数据的第一个字节的采样时刻。时间戳的粒度(也即增量)取决于发送的数据类型。
RTCP:实时运输控制协议
与RTP配合使用的协议,也是RTP协议中不可分割的一部分。
RTCP的主要功能:服务质量的监督和反馈,媒体数据间的同步,以及多播组中成员的标志。RTCP分组很短,通常多个分组封装在一个UDP数据报中。
RTP:实时运输协议
由IETF AVT小组开发,已成为正式标准,同时也是ITU-T的标准[RFC 3550, 3551]。RTP为实时应用提供端到端的运输,但不提供对服务质量的保证,需要RTCP来保证质量。RTP类似于一个协议框架,它只包含实时应用所需的共同功能,其本身并不对多媒体数据做任何处理,而只是在应用层数据前追加了一些附加信息,让应用层知道该如何处理。
另外,应用层数据被封装成的RTP分组只包含RTP数据,而控制是由另一个配套使用的协议RTCP提供的。RTP没有分发机制,它必须与UDP一起使用。RTP必须为偶数端口号,而下一奇数UDP端口留给同一会话中的RTCP使用。
主要传输码流数据
默认情况,RTP端口为5004,RTCP端口为5005
分组级数据包括三个部分,即报头信息、有效载荷信息和分组活动信息。
分组活动信息包括诸如生存时间(TTL)、分组报头的标志(诸如FIN、SYN和可用于描述分组的活动或通信行为的PIN)之类的信息。
LTE网络
LTE,全称为“Long-Term Evolution”,是一种4G(第四代)无线移动通信技术标准
实际上,“LTE”一词通常被用来描述第四代移动通讯技术(4G)。因此,在LTE和4G之间几乎没有任何区别。然而,“LTE”确实是一种“4G技术”的子分类,它更加专注于数据传输速度,这是高速移动互联网需求所必须的。同时,它还具有更好的声音质量、网络性能和安全性能表现。
自适应比特率流操作
在自适应比特率(ABR)中,视频资源或剪辑以多个分辨率进行编码。编码由多个参数控制,并且给定的分辨率与用于量化的固定设置相关联,该量化设置随后与源视频确定的平均带宽粗略相关
缓存导致延迟
H.264
基础数据:色彩空间模型、音频位深等
编码:编码的作用是压缩数据,编码格式如H264、AAC等
封装:封装成文件,如MP4、FLV等
I帧:能独立播放、是完整的视频帧(数据量大)
P帧:需要根据前一个I帧或P帧才能计算出最终图像
B帧:需要根据前一个和后一个I帧或P帧才能计算出最终图像(数据量小)I帧、P帧、B帧是H264、H265等编码格式的压缩手段其他编码格式不一定存在这样的概念