MPEG-2系统层协议规范:TS流包头解析

需积分: 50 48 下载量 49 浏览量 更新于2024-08-08 收藏 553KB PDF 举报
"MPEG-2系统层协议规范与DVB PSI/SI解析" MPEG-2系统层协议规范是数字视频广播(DVB)中传输流(TS)的基础,它定义了如何打包和传输多媒体数据。TS包由一系列固定长度的数据单元组成,每个单元包含了特定的字段用于指示数据的性质和状态。 TS流包头是每个TS包的起始部分,包含了关键的信息用于解码和处理数据。具体结构如下: 1. Sync_byte:8位同步字节,固定为0X47,用于识别TS包的起始位置。 2. Transport_error_indicator:1位错误指示器,若为1,表示TS包存在无法修复的错误。 3. Payload_unit_start_indicator:1位负载单元起始指示器,1表示净荷包含PES包、PSI或SI的首字节。 4. Transport_priority:1位优先级标志,1表示高优先级。 5. PID:13位包标识符,标识TS包中的数据类型,如PAT、CAT、SDT等。 6. Transport_scrambling_control:2位加密控制,指示数据是否加密。 7. Adaptation_field_control:2位适应域控制,决定适应域是否存在及大小。 8. Continuity_counter:4位连续计数器,用于检测数据流的连续性。 PSI(Program Specific Information)和SI(Service Information)是TS中用于解码和管理服务的重要部分。PAT(Program Association Table)提供了节目与服务关联的全局视图,指明各个节目对应的节目映射表(PMT)的PID。CAT(Conditional Access Table)用于管理条件接收,即加密服务的相关信息。SDT(Service Description Table)描述了可用的服务,包括服务ID和服务的名称等。 业务描述分段是SI的一部分,主要包含服务信息。表3.5展示了业务描述分段的结构: 1. Table_id:标识表的类型,见表2。 2. Section_syntax_indicator:1位,应设置为1。 3. Section_length:12位,表示段的总字节数,含CRC。 4. 服务信息循环,包含服务ID、运行状态、免费CA模式等描述符。 EIT_schedule_flag和EIT_present_following_flag分别指示事件信息表(EIT)的计划和当前/后续事件的存在。running_status字段提供了服务的状态信息,如是否正在播放。free_CA_mode表示服务是否需要付费。 这些信息对于接收端正确解析和呈现数字电视服务至关重要,它们使得接收设备能够识别并解码正确的服务内容,提供用户友好的观看体验。理解这些协议规范对开发DVB系统软件或硬件的工程师来说是必不可少的。