TS码流解析-3-解析PAT表

本文分享了如何解析PAT表以获取TS码流中节目对应的PID。解析过程中涉及关键字段program_number和program_map_PID,通过流程图、数据结构定义及代码实现详细阐述了解析方法,强调了准确读取字节位置的重要性。
摘要由CSDN通过智能技术生成

任务三

解析PAT表,并且获取码流里面跟节目相关的PID

相关知识

我们首先来查看下PAT表的结构,如下图所示
在这里插入图片描述

在这个结构里面,我们需要关注的是program_number以及program_map_PID。
我们获取到PAT的表之后,对其中的section进行解析,把我们需要的信息取出来,然后存入数据结构,这个任务就算完成了。

解析过程

1 流程图

在这里插入图片描述

2 数据结构定义

typedef struct pat_info
{
   
    unsigned int program_number      :16;
    unsigned int reserved            :3;
    unsigned int program_number_pid  :13;
    struct pat_info *next;
}PAT_INFO;

3 代码

static PAT_INFO *insert_pat_info_to_link(PAT_INFO *pat_info_link_head, PAT_INFO additive_node)
{
   
    PAT_INFO *new_pat_info_node = NULL;
    new_pat_info_node = (PAT_INFO*)malloc(sizeof(PAT_INFO
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值