H264 NALU 使用PS封装
来源:互联网 发布:excel数据管理软件 编辑:程序博客网 时间:2024/05/21 19:49
PS封装按照ISO DEC-13818-1标准。一个PS包包含PS Header, PES Header, PS system header, PS system map等。
针对H264做如下PS封装:
1、每个IDR NALU前一般都会包含SPS、PPS等NALU,因此将SPS、PPS、IDR 的NALU封装为一个PS包,包括ps头,然后加上PS system header,PS system map,PES header+h264 raw data。所以一个IDR NALU PS包由外到内顺序是:PS header | PS system header | PS system Map | PES header | h264 raw data。
2、对于其它非关键帧的PS包,就简单多了,直接加上PS头和PES头就可以了。顺序为:PS header | PES header | h264 raw data。
还有就是用rtp协议发送时,如果一个PS包大于MTU时,会有分包问题。只需要简单的分包发送就可以了,但是同一个PS包的时间戳是相同的,需要注意。
以上是对只有视频video的情况,如果要把音频Audio也打包进PS封装,也可以。当有音频数据时,将数据加上PES header 放到视频PES后就可以了。顺序如下:
PS包=PS头|PES(video)|PES(audio),再用RTP封装发送就可以了。
以上是H264 PS封装的大致流程。
针对H264做如下PS封装:
1、每个IDR NALU前一般都会包含SPS、PPS等NALU,因此将SPS、PPS、IDR 的NALU封装为一个PS包,包括ps头,然后加上PS system header,PS system map,PES header+h264 raw data。所以一个IDR NALU PS包由外到内顺序是:PS header | PS system header | PS system Map | PES header | h264 raw data。
2、对于其它非关键帧的PS包,就简单多了,直接加上PS头和PES头就可以了。顺序为:PS header | PES header | h264 raw data。
还有就是用rtp协议发送时,如果一个PS包大于MTU时,会有分包问题。只需要简单的分包发送就可以了,但是同一个PS包的时间戳是相同的,需要注意。
以上是对只有视频video的情况,如果要把音频Audio也打包进PS封装,也可以。当有音频数据时,将数据加上PES header 放到视频PES后就可以了。顺序如下:
PS包=PS头|PES(video)|PES(audio),再用RTP封装发送就可以了。
以上是H264 PS封装的大致流程。
- H264 NALU 使用PS封装
- H264 NALU 使用PS封装 RTP发送
- H264 NALU 使用PS封装 RTP发送
- H264 NALU 使用PS封装 RTP发送
- PS封装H264码流
- RTP 包格式 详细解析 -- H264 nalu 封装rtp 方式。
- H264 NALU slice 模式
- h264 Nalu 详解
- h264 nalu详解
- h264 Nalu 详解
- H264--NALU/SPS/PPS
- H264 NALU单元格式
- h264 Nalu 详解
- H264 NALU RTP
- h264 Nalu 详解
- h264 Nalu 详解
- H264 NALU 详解
- h264 Nalu 详解
- 代理模式ProxyPattern以及java对此的支持——动态代理
- 使用WinSCP软件在windows和Linux中进行文件传输
- 10个你可能不知道的JavaScript小技巧
- ubuntu新建用户出现的问题
- python:open/文件操作
- H264 NALU 使用PS封装
- 关于空间
- 解决Div自适应高度的方法
- 两个原型设计工具的用途比较
- Android SharedPreferences文件存放在手机里位置
- IP网际协议
- iOS SEL类型
- Axis2 1.5 客户端需要的最小jar包集合
- HBase 表重启故障问题,如何让损坏的storefile加入skipstorefile中