分类: LINUX
2012-04-13 11:50:00
对于一个MPEG文件,文件内容如下:
分析该文件,MPEG的格式分析见最后的附表,分析部分结果如下:
MPEG文件格式附表
缩写 | 全名 | 长度 | 内容 | |
程序层 | SHC | Sequence Header Code | 32 | 程序层开始码 |
HS | Horizontal Size | 12 | 画面的横向像素 | |
VS | Vertical Size | 12 | 像素的纵向扫描条数 | |
PAR | Pel Aspect Ratio | 4 | 像素间的长宽比 | |
PR | Picture Rate | 4 | 画面显示的周期 | |
BR | Bit Rate | 18 | 限制产生的位元数量而将 位元速率分割成400bps |
|
MB | Marker Bit | 1 | ||
VBS | VBV ( Video BuFrameering Verifer BuFrameer Size ) |
10 | 制编码发生量的虚拟 缓冲器大小的参数. VBV=16x1024xBS |
|
CPF | Constrained Parameters Flag | 1 | 各参数在控制量内 | |
LIQM IQM |
Load Intra Quantize Matrix Intra Quantize Matrix |
1 8x64 |
内部MB用量子化矩阵数据 存在的Intra MB用量子化矩阵 |
|
LNIQM NIQM |
Load Non Intra Quantize Matrix Non Intra Quantize Matrix |
1 8x64 |
非内部MB用量子化矩阵数据 存在非Intra MB用量子化矩阵 |
|
ESC SED |
Extension Start Code Sequence Extension Data |
32 8xn |
扩充数据的开始码 | |
UDSC UD |
User Data Start Code User Data |
32 8xn |
User Data的开始码 User Data |
|
SEC | Sequence End Code | 32 | 程序终了码 | |
GOP层 | GSC | Group Start Code | 32 | GOP开始码 |
TC | Time Code | 25 | 时间码 | |
CG | Close GOP | 1 | GOP内画面可自其他的 GOP做独立拨放 | |
BL | Broken Link | 1 | 为前一GOP数据的编辑 而无法使用 |
|
ESC GED |
Extension Start Code Group Extension Data |
32 8xn |
||
UDSC UD |
User Data Start Code User Data |
32 8xn |
User Data | |
PSC | Picture Start Code | 32 | Picture层的开始码 | |
TR | Temporal Reference | 10 | 以Picture连续的序号做GOP 的栏重设之0124残馀值 |
|
画面层 | PCT | Picture Coding Type | 3 | 表示Picture的型态 |
VD | VBV Dalay | 16 | 随机存取时 BuFrameer初始状态的记数 |
|
FPEV | Full pel Forward Vector | 1 | 以整数或半像素单位 做动态向量的单位 |
|
FRAME | Forward f Code | 3 | 顺向动态向量的描述范围 | |
C | ||||
FPBV | Full Pel Backward | 1 | 以整数或半像素单位 做动态向量的精度 |
|
BFC | Vector | |||
Backward Code | 3 | 反向动态向量的技术范围 | ||
EBP | Extra Bit Picture | 1xn | 其他画面资讯 | |
EIP | Extra information Picture | 8xn | 将来 | |
EBP | Extra Bit Picture | 1 | 无EIP时以'0'表示 | |
ESC | Extra Start Code | 32 | 将来 | |
PED | Picture Extension Code | 8xn | User Data | |
UDSC | User Data Start Code | 32 | ||
UD | User Data | 8xn | ||
切面层 | SSC QS |
Start Code Quantizer Scale |
32 5 |
切片开始时以该切片层做量子化 |
EBS EIS |
Extra Bit Extra Information |
1xn 8xn |
表示其他切片层的资讯 | |
EBS | 16 | 无EIS时以0表示 | ||
巨集区块层 | MB STUFF |
Macroblock Stuffing | 11 | 编码量不足时之Dummycode |
MB | Macroblock Escape | 11 | 相当33个MB Space | |
MBAI | Macroblock Address Increment | 1-11 | 前有Scape时MB数+1 自VLC画面的又端表示MB+1 |
|
SSC | Start Code | 1-8 | MB编码模式的VLC | |
QS | Quantizer scale | 5 | 以MB以後的量子化步骤值 | |
MHF MHV |
Motion Horzontal Forward Code Motion Forward Motion Vertical Forward Code Motion Vertical Backward |
1-11 1-6 1-11 1-6 |
以MB顺向的动态向量水平分量与前较量的微分以反方向表示的VLC做编码与顺向动态向量的垂直分量的MHB表现相同 | |
MHB MVB |
Motion Horzontal Backward Code Motion Backward Motion Vertical Backward Motion |
1-11 1-6 1-14 1-6 |
以MB顺向的动态向量水平分量 与前较量的微分以反方向表示 的VLC做编码与反向动态向量的 垂直分量的MHB表现相同 |
|
CPB | Coded Block Pattem | 3-9 | 表是否有MB内6个区块系数的 VLC |
|
EOM | End of Mircoblock | 1 | 只有B Fram才有表MB终了 | |
区块层 | DDSL DDSC DDCD |
DCT DC Size Luminance DCT DC Size Chrominance DCT DC Differential |
2-7 2-8 1-8 |
表示下一DCT DC微分的位元数 该区块的DC分量与 前区块的分量的微分 |
CDF | DCT Coefficient First | 2-28 | DC分量的VLC | |
DCN EOB |
DCT Coefficient Next End of Block |
3-28 2 |
将DCT系数依DC分量顺序送出 以非0的细数与其前为0的系数 组合的VLC在该区块後的系数 全以0表示 |