首先,感谢这篇东西的来源 - 《深入浅出数字电视》张刚主编,电子工业出版社。
我看了这本书以后的确感觉对MPEG的东西清楚了很多。
下面是本人的笔记:
1)视频压缩的原理:
视频压缩原理是利用了图像中空间相关性和时间相关性。
许多像素构成一帧图像。一个像素通常与它周围的某些像素在亮度和色度上存在一定的关系,这叫空间相关性。
一个节目有若干帧连续图像序列组成,一个图像序列中前后帧图像也存在一定的关系,这叫时间相关性。
I帧采用帧内编码方式,只利用单帧图像内的空间相关性,没有利用时间相关性。用于接收机的初始化和信道获取,已经节目的切换和插入。
P帧和B帧采用帧间编码方式,同时利用空间和时间相关性。
P帧图像只采用前向时间预测。可以包含帧内编码部分。P帧的每个宏模块可以是前向预测,野可以是帧内编码。
B帧采用双向时间预测,采用未来帧作参考,因此MPEG-2编码码流中图像帧的传输顺序和显示顺序是不同的。
帧内编码不作预测环处理。DCT直接应用于原始的图像数据。
2)MPEG的层。明确了解这个很重要。关系到你研究的方向:
MPEG-2的层
MPEG-2根据图像块和图像帧的不同组合划分为六层。MPEG-2的层直接决定了编码码流的形成和结构。
MPEG-2的层从下至上依次为:
Block像块层: 由8X8个像素点构成的DCT变化基本单元
MacroBlock宏块层:在4:2:2取样中,一个宏块由4个亮度像块,2个Cr像块和2个Cb像块构成;另外还有4:2:0,4:4:4的取样方式。MPEG-2定义3中宏块结构。代表构成一个宏块的亮点像块和色差像块的数量关系。
Slice像条层:一连串的宏块构成一个像条。包括一定数量的宏块,其顺序与扫描顺序一致。MP◎ML中一个像条必须在同一宏块行内。
Picture图像层:一系列像条可以构成一幅图像,图像分为I,B,P三类。包括图像编码类型和时间参考信息。
GOP图像组层:由相互关联的一组I,B,P帧组成,I帧为第一帧。GOP头包括时间信息。
Sequence视频序列层:一系列图像组构成一个视频序列。包含图像尺寸,宽高比,图像速率等信息。
从像块开始从下至上依次编码,并在除像块和宏块外的每一层的开始处加上起始码和头标志,就形成MPEG-2 ES(elementary stream)
在IPTV实施中,工程人员对这些关系感到迷惑。
首先, 图像层(picture)一下的东西是由编码器实现的。不同压缩标准有不同算法。假如想深入研究可以买一些MPEG原理的书看。
不过,这些东西对视频流传输帮助不大。因为视频流传输不会改变压缩格式。搞IPTV工程实施的人看压缩原理帮助不大。
3) ITU-T Rec. H.222.0/ISO/IEC 13818
提及了一个T-STD的模型。这是重要的概念。
4)传输流(TS)设计使具有以下优点:
a)从TS恢复编码数据,进行解码
b)从TS抽取一个节目分组,生成新的TS
c)从多个TS提取一个或多个分组,生成新的TS
d)从TS抽取一个节目分组,生成PS
e) 把PS转换成TS进行传输,最后再转换为PS
想想以前中国一直讲的ISMA好。ISMA封装是否具有这些优点呢?
5)IPTV做法是在传统的MPEG传输上加了IP的封装。
研究如何使用IP传输MPEG超越这本书的范围。