使用RTP 协议 对 H264 封包和解包,h264的avpacket和NAL的关系

学习内容:

本章探讨如何将h264的 avpacket的视频 数据,通过RTP协议发送到 流媒体 服务器 或者 对端接受者。

前提

我们在将 YUV数据变成avframe后,通过h264 编码变成AVPacket,例如,在安防项目中,或者直播中,需要将 avpacket发送到 流媒体服务器 或者 对端,那么如何做呢?

H264格式的回顾

音视频开发14 FFmpeg 视频 相关格式分析 -- H264 NALU格式分析-CSDN博客

这里将关键点 摘录出来:

帧内压缩: H264将图像分块为⽚、宏块和字块进⾏分⽚传输;通过这个过程实现对视频⽂件的压缩包装。

帧间压缩: H264采⽤了独特的I帧、P帧和B帧策略 来实现,连续帧之间的压缩;

H264编码结构- NALU

H.264 原始码流 ( 裸流 ) 是由⼀个接⼀个 NALU 组成。

就像下面这样:

 NALU Header

F为禁⽌位,占1bit  

forbidden_zero_bit: 在 H.264 规范中规定了这⼀位必须为 0。

R为重要性指示位,占2bit 

nal_ref_idc:取00~11,似乎指示这个NALU的重要性,如00的NALU解码器可以丢弃它⽽不影响图像的回放,0~3,取值越⼤,表示当前NAL越重要,需要优先受到保护。如果当前 NAL是属于参考帧的⽚,或是序列参数集,或是图像参数集这些重要的单位时,本句法元 素必需⼤于0。

T为负荷数据类型,占5bit

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值