视频协议与封装格式

视频协议

RTSP

RTSP协议是一个实时流传输协议,输出rtp封装码流,具有很好的可扩展性,新方法和参数很容易加入RTSP

ONVIF

ONVIF规范描述了网络视频的模型、接口、数据类型以及数据交互的模式。并复用了一些现有的标准,如WS系列标准等。ONVIF规范的目标是实现一个网络视频框架协议,使不同厂家所产生的网络视频产品完全互通。

  • 特点

信令由WebService实现

取流使用RTSP协议

码流封装格式为rtp

兼容性强,配套完善,市场占有率高

  • 使用场景

第三方设备接入

海外市场

RTMP

实时消息传输协议,输出flv封装码流。RTMP协议传输数据格式是RTMP Message,但在传输时发生端会把Message划分为带有Message ID的chunk,在接收端会根据chunk中包含data的长度,message id和message的长度把chunk还原完整的message,从而实现信息的收发。

HLS

HTTP Live Streaming,输出TS封装码流。

  • HLS协议由三部分组成,HTTP+M3U8+TS
  • HTTP是传输协议,M3U8是索引文件,TS是视音频的媒体信息
  • 利用切片技术按设定的时间间隔对TS码流进行切割并保存为一个TS文件

缺点:因为要有缓存,所以延迟严重

视频封装格式

RTP

RTP是实时传输协议,是rtsp协议码流传输的封装格式

RTP码流每帧中所有的时间戳相等,且最后一个RTP包,包头的mark bit置1,RTP包含RTP头和RTP数据

  • 优点:RTP封装包头有序列号,udp传输时可进行排序和丢包检测,适用于码流网络传输
  • 缺点:RTP封装头内没有包长的字段,写入文件后,无法读出一个完整的包,所以RTP封装的码流保存成文件是不能直接播放的,不适合存储

TS

TS是基于MPEG-2的封装格式,特点就是视频流的任一片段开始都是可以独立解码的,广泛应用于数字电视领域

TS分为三层ts层、pes层、es层

  1. es层就是音视频数据
  2. pes层是在音视频数据上加了时间戳等对数据帧说明信息
  3. ts层是在pes层上加入数据刘识别和传输的必要信息码流

TS码流采用固定长度188字节的数据包

  • 优点:

当传输误码破坏了某一个TS包的同步信息时,接收端可在固定的位置检测到下一个TS包到同步信息,从而恢复同步,避免数据丢失,适用于在传输误码丢失,适用于传输误码丢失比较严重的网络场景

  • 缺点:

负载有限,封装存在浪费,如果数据信息只有10字节大小也进行188字节TS封装,不建议用于存储

FLV

FLV主要是为了Adobe公司flash播放器和服务器之间音频视频和数据传输开发的开放协议RTMP协议的网络传输

FLV包括文件头和文件体两部分,文件体由一系列的Tag及Tag size对组成,Tag又可以分为audio、video和script,分别代表音频流,视频流和脚本流

  • 优点

文件体积小,便于传输、共享

众多网站支持所有

  • 缺点

不被所有播放器支持

PS

ps是程序流或节目流的简称,程序流将一个或多个分组但有共同的时间基准的基本数据流(PES)合并成一个整体流

PS流可以视为多个PS GOP,每个GOP是以I帧起始的多帧集合,包括音频帧、P/B帧等多个PS包组成

  • 优点:定义较多可扩展字段,拓展性好,结构简单,易于分割,和TS封装相比,相同视频时长的数据量较少,适用于存储
  • 缺点:PS流的包结构是可变长的,一旦某一PS包同步信息丢失,接收端无法确定下一个包的同步位置,就会造成失步,导致严重的信息丢失,在信道环境较好,传输误码较低时,采用PS码流网络传输
相关推荐
大大祥2 小时前
一个kotlin实现的视频播放器
android·开发语言·kotlin·音视频
TEL189246224772 小时前
IT66320:1输入1输出HDMI 2.0重定时器,配备HDMI 2.1 eARC接收器和嵌入式MCU
音视频·实时音视频·视频编解码
EasyCVR2 小时前
视频汇聚平台EasyCVR构筑校园食堂全场景智慧监管新模式
网络·音视频
TLeung653673 小时前
美团开源黑科技InfiniteTalk:不限视频长度AI工具,支持图生视频和视频生视频,既可本地部署也可云端部署。关键免费、免费、免费。
人工智能·科技·音视频
爱敲代码的婷婷婷.3 小时前
如何快速把长视频或音频切割成多等份
音视频
长安即是故里3 小时前
搭建一个现代化视频聚合播放平台(含视频源)
前端·音视频·开源项目··部署教程
行业探路者3 小时前
录音转二维码与视频二维码生成器的使用指南
人工智能·学习·音视频·二维码·产品介绍
EasyDSS3 小时前
视频推拉流EasyDSS平台助力实现无人机推流直播新生态
音视频·无人机
qq_310658513 小时前
webrtc源码走读(一)WebRTC源码结构拆分
服务器·c++·音视频·webrtc
qq_310658513 小时前
webrtc源码走读(二)应用层如何使用WebRTC API实现功能
服务器·c++·音视频·webrtc