h.264入门

H.264对图像的处理过程大致如下:

        首先,对图像进行分片。将将一幅图像(picture)分成若干片(slice),然后根据需求将每一片分成若干宏块(Maroblock)。宏块是H.264对图像操作的基本单位,在此基础上对图像进行压缩处理。

        第二,对图像进行分别处理。在H.264中,主要是根据对运动图像的预测来对图像进行压缩的。在传输的过程中大致可以分为两种片I帧和P帧。I帧的编码是对图像自身进行编码压缩,通过判断相邻宏块的亮度和色度信息生成一个运动向量(MV Motion Vector)由来进行运动估计(ME Motion 

Estimation),其原理主要基于线性插值。I帧之所以由自身进行压缩是因为其主要用于场景变换很大的景,之前的图像没有大的参考意义。另外P帧主

要用帧间的预测,它主要包括两个方面运动估计和运动补偿(MC Motion Compensation)。它的得到首先是将相邻的帧(前或者后)作为参考帧,然后

提取与当前宏块相近的部位,比较两者,生成运动向量。然后由运动向量与实际的向量对比,得到运动向量差,进行运动补偿。在最后形成的压缩流里

面,只有这个运动向量差才会被输的,这样就起到了压缩冗余信息的作用。

        第三,对压缩流进行量化和变长编码(VLC)最后将生成的数据流根据需要,加上不同的控制信息放入网络抽象层(Net Abstract Layer)中,用于

传输。到这里就是可以在实际中传输的数据了,例如将通过编码的NAL数据包放入RTP协议的包中,通过IP数据包进行传输就是流媒体了。

        通过一个星期的学习我主要尝试从框架上把握H.264的工作原理。刚开始学习协议的时候有种无从下手的感觉,到网上查找别人学习经验后我得以从

繁琐的细节中走出来。目前只是大致了解,下一个阶段主要是对每一个模块的前驱以及后继模块了解清楚结合开源的库在实际中去学习。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值