packet_start_code_prefix(24) | 开始码字为0X00 00 01 |
stream_id(8) | 原始流的类型和数目,取值从1011 1100到1111 1111之间。各值含义具体见13818-1。 |
PES_packet_length(16) | 表示从此字节之后PES包长(单位字节)。0表示PES包长不限制,且只能用于视频PES。 |
10 | 填充字节。 |
PES_scrambling_control(2) | PES有效负载的加密模式。00表示不加密,其余表示用户自定义。 |
PES_priority(1) | PES数据包的优先级。类似于TS的此字段。 |
data_alignment_indicator(1) | 为1时,表明此分组头部之后紧跟着 数据流描述子中定义的访问单元类型。 |
copyright(1) | 版权,1表示有版权,具体见版权描述子13818-1 1-2-6-24。0表示没有。 |
original_or_copy(1) | 1表示原始数据,0表示备份 |
PTS_DTS_flag(2) | 10表示含有PTS字段,11表示含有PTS和DTS字段,00表示不含有PTS和DTS,01无定义。 |
ESCR_flag(1) | 1表示ESCR在PES首部出现,0表示不出现 |
ES_rate_flag(1) | 1表示PES分组含有ES_rate字段。0表示不含有。 |
DSM_trick_mode_flag(1) | 1表示有8位的trick_mode_flag字段,0表示不出现此字段。只对DSM有效。在广播中不用。 |
additional_copy_info_flag(1) | 1表示有copy_info_flag字段,0表示不出现此字段。 |
PES_CRC_flag(1) | 1表示PES分组中有CRC字段,0表示不出现此字段。 |
PES_extention_flag(1) | 1表示扩展字段在PES包头存在,0表示扩展字段不存在 |
PES_header_data_length(8) | 表示可选字段和填充字段所占的字节数。 |
0010 | 0010填充字段,表示只含有PTS,不含有DTS 当含有DTS时,这个填充字段为0011
PTS字段。 |
PTS[32…30](3) | |
marker_bit(1) | |
PTS[29…15](15) | |
marker_bit(1) | |
PTS[14…0](15) | |
marker_bit(1) | |
0001 | 0001填充字段,表示接下来为DTS。
DTS数据解码时间 |
DTS[32…30](3) | |
marker_bit(1) | |
DTS[29…15](15) | |
marker_bit(1) | |
DTS[14…0](15) | |
marker_bit(1) | |
reserved(2) | 填充字段
基本系统参考时间,和扩展系统参考时间。 |
ESCR_base[32…30](3) | |
marker_bit(1) | |
ESCR_base[29…15](15) | |
marker_bit(1) | |
ESCR_base[14…0](15) | |
marker_bit(1) | |
ESCR_extention(9) | |
marker_bit(1) | |
marker_bit(1) | 表示系统解码器从PES分组中接收字节的速度。以50B/s为单位,有传送的作用。 |
ES_rate(22) | |
marker_bit(1) | |
trick_mode_control(3) | 特技模式,比如快进,快退。具体见13818-1 |
field_id(2) | 表示在特技模式中,哪些场将被显示。00表示仅显示顶场,01表示仅显示底场,10表示显示全帧。11保留。 1表示编码间隙中可能丢失宏块,0表示不会丢失宏块。丢失宏块用前面已解码的图像宏块代替。 编码的受限系数集,表示DCT后系统的非零限制,具体见13818-1 |
intra_slice_refresh(1) | |
frequency_trunction(2) | |
field_rep_cntrl(5) | 隔行扫描中首场和底场显示顺序。 |
reserved(3) | 填充 |
marker_bit(1) | 填充 |
additional_copy_info(7) | 包含和版权有关的私用数据 |
previous_PES_packet_CRC(16) | CRC校验PES包数据(不包括包头) |
PES_private_data_flag(1) | 1表示PES包首部中含有私用数据,0表示没有。 |
pack_head_field_flag(1) | 1表示PES首部含有一个ISO/IEC 11172的组首部。0表示PES首部没有含有组首部。 |
program_packet_sequence_counter_flag(1) | 1表示PES分组含program packet sequence counter和字段,0表示不含有。 |
P-STD_buffer_flag(1) |
|
reserved(3) | 填充 |
PES_extention_flag_2(1) | 1表示出现PES_extention_flied及相关字段。0表示不出现。 |
PES_private_data(128) | 私用数据 |
pack_field_length(8) | 指示pack_header_field()字节长度。 |
marker_bit(1) |
|
program_packet_sequence_counter(7) | 计数器,到0后重新计数,计算PES分组的数量。 |
marker_bit(1) |
|
MPEG1_MPEG2_identifier(1) | 1表示PES分组带有ISO/IEC 11172-1系统信息,0代表带有PS流信息。 |
original_stuff_length(6) |
|
01 |
|
P-STD_buffer_scale(1) | 联合使用控制BSn缓冲区的大小,具体定义见13818-1。仅用于PS流中。 |
P-STD_buffer_size(13) | |
marker_bit(1) |
|
PES_extention_field_length(7) | 规定此字段之后的扩展(填充)字段长度(单位字节) |
reserved(8) | 保留位8位 |
stuffing_byte(8) | 填充字段。1111 1111 |
PES_packet_data_byte(8) | PES包原始流数据长度,等于PES_packet _length减去从PES_packet_length到此字段之前的长度。 |
padding_byte(8) | 填充字段。1111 1111 |