国标消消乐---4.视频流到国标流封装过程

        做公安行业的视频监控类项目,永远绕不开国标这类话题,今天DZ先生就给大家说说视频流到国标流封装全流程;下面我提几个关键词,H.264, H.265,TCP,UDP,ES,PES,PS,RTP;如果你看到这几个关键词就能知道这几个之间的关系,说明你已经很厉害了哈!

名词介绍

H.264:
视频编码格式,是由ITU-T视频编码专家组(VCEG)和ISO/IEC动态图像专家组(MPEG)联合组成的联合视频组   (JVT,Joint Video Team)提出的高度压缩数字视频编解码器标准;所有厂家都依照这个格式开发,可互相编解码。
H.265:
视频编码格式,是ITU-T VCEG继H.264之后所制定的新的视频编码标准。H.265标准围绕着现有的视频编码标准H.264,保留原来的某些技术,同时对一些相关的技术加以改进;没有形成标准,各个厂家有各自的标准,不可互相编解码。
TCP:
OSI七层协议,第四层,传输层。拥有三次握手机制,不丢包。
UDP:
OSI七层协议,第四层,传输层。没有三次握手机制,会丢包。
ES:
ES--Elementary  Streams  (原始流)是直接从编码器出来的数据流,可以是编码过的视频数据流(H.264,MJPEG等),音频数据流(AAC),或其他编码数据流的统称。ES流经过PES打包器之后,被转换成PES包。
PES:
PES--Packetized  Elementary Streams  (分组的ES),ES形成的分组称为PES分组,是用来传递ES的一种数据结构。PES流是ES流经过PES打包器处理后形成的数据流,在这个过程中完成了将ES流分组、打包、加入包头信息等操作(对ES流的第一次打包)。PES流的基本单位是PES包。PES包由包头和payload组成。
PS:
PS--Program Stream(节目流)PS流由PS包组成,而一个PS包又由若干个PES包组成(到这里,ES经过了两层的封装)。PS包的包头中包含了同步信息与时钟恢复信息。一个PS包最多可包含具有同一时钟基准的16个视频PES包和32个音频PES包。

进行 PS 封 装 时, 应 将 每 个 视 频 帧 封 装 为 一 个 PS 包, 且 每 个 关 键 帧 的 PS 包 中 应 包 含 系 统 头(System Header) 和PSM(Program Stream Map) , 系统头和 PSM 放置于 PS 包头之后、 第一个 PES 包之前;

典型的视频关键帧 PS 包结构如图 C.1 所示, 其中 PESV 为视频 PES 包,PESA 为音频 PES 包, 视频非关键帧的 PS 包结构中一般不包含系统头和 PSM;

系统头应包含对 PS 包中码流种类的描述, 其中视频和音频的流ID(stream_id) 取值如下:
a) 视频流ID:0xE0;
b) 音频流ID:0xC0。
针对本文档规定的几种视音频格式,PSM 中流类型(stream_type) 的取值如下:
a) MPEG-4 视频流:0x10;
b) H.264 视频流:0x1B;
c) SVAC 视频流:0x80;
d) G.711 音频流:0x90;
e) G.722.1 音频流:0x92;
f) G.723.1 音频流:0x93;
g) G.729 音频流:0x99;
h) SVAC 音频流:0x9B。

PS 包的 RTP 封装格式参照IETF RFC2250,RTP 的主要参数设置如下:
a) 负载类型(payloadtype) :96;
b) 编码名称(encoding name) :PS;
c) 时钟频率(clockrate) :90 kHz;
d) SDP 描述中“m”字段的“media”项:video。

RTP:
RTP/AVP 96 标识媒体类型为视频或视音频, 采用 RTP over UDP 传输方式, 负载类型为96。
TCP/RTP/AVP  96 标识媒体类型为视频或视音频, 采用 RTP over TCP 传输方式, 负载类型为96。
PS包以负载的方式封装成RTP报包。负载方式有两种: TCP  and  UDP。

举例:

我司平台和第三方平台国标对接,第三方平台作为上级,在PC客户端浏览我司视频
视频流封装过程如下:
a. 平台从相机取到普通的ES流,由于相机编码为H.264,所以此ES编码格式为H.264的ES流;
b. 由于往上级平台要发送国标流,所以ES流先被封装为PES,然后又被封装成PS流;
c. PS包通过UDP负载成RTP报文传给第三方,由于H.264通用,所以第三方厂家可以解码。

注:
1)如果相机是国标UDP接入平台,平台和第三方最好是国标UDP对接,如果用TCP,需要我司流媒体有将UDP国标流转成TCP的能力;如果是国标TCP接入,则平台最好和第三方使用国标TCP,否则需要TCP转UDP;
2)如果编码是H.265, 则第三方平台会出现解不了码的故障。前面说过H.265还未形成标准。
3)一般我司私有协议(H.264)接入的相机,则流媒体可以取UDP码流和TCP码流,因此和第三方平台对接使用UDP和TCP都可以。

 

DZ先生个人官方微信

***让社会更安全,让生活更智能***

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值