MPEG1和MPEG2码流结构分析

上次测试MPEG4H264的时候,由于要进行分帧输入解码器测试,因此进行了MPEG4H264流的简单分析,MPEG4流的分析见上次记录的那篇文章。

目前又要开始测试MPEG1MPEG2流的解码了,同样,对这两种码流也进行一下简单的分析,通过搜集资料和查看两种标准的协议13818-211172-2,了解这两种码流格式的一些基本结构,今天把它们也在此做一个简单的整理和记录,也便于以后的翻看和大家的参考:

由于MPEG1MPEG2的结构类似,这里就主要以MPEG2来进行说明:

首先来给一张MPEG2 video Sequence的一个结构图:

 

MPEG-2 video Sequence 

与采用Elecard Stream Analyer分析出的结果基本一致:

Elecard分析出的MPEG2码流

 

有了上面的图后,大家就可以清晰的看出MPEG2 video Sequence的一个大体结构了。

下面我们来以例子来进行码流结构的简单分析和说明:

比如:Test.m2v

00 00 01 B3 08 00 80 23 00 FA 20 30 00 00 01 B5

以视频系列头Sequence Header开始,Start code values: 00 00 01 B3 为起始码;

horizontal_size_value(12 bits)08 0 = 128

vertical_size_value(12 bits)0 80 = 128

aspect_ratio_information(4 bits)  = 2

frame_rate_code (4 bits) = 3

bit_rate_value18 bits = 00 FA 2>>2 = 0000 0000 1111 1010 00 = 1000

marker_bit(1 bit) = 1

vbv_buffer_size_value(10 bits) = 0 0000 0011 0 = 6

constrained_parameters_flag(1 bit) = 0

load_intra_quantiser_matrix( 1bit) = 0

load_non_intra_quantiser_matrix(1bit) = 0

 

00 00 01 B5  extension_start_code

00 00 01 B5 14 82 00 01 00 00 00 00 01 B5 23 05 05 05 02 02 04 00 00 00 00 01 B2

extension_start_code_identifier(4 bits) = 1

profile_and_level_indication(8 bit) = 48

progressive_sequence( 1 bit) = 0

chroma_format(2 bits) = 01

horizontal_size_extension(2bit) = 0

vertical_size_extension(2 bit) = 0

bit_rate_extension(12 bit) = 0 0000 0000 000

marker_bit(1 bit) = 1

vbv_buffer_size_extension(8 bits) = 00

low_delay(1 bit) = 0

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值