TS_PMT_Stream pmt_stream; set_pmt_pack.PMT_Stream.clear(); //封装视频流信息 pmt_stream.stream_type = 0x1b; pmt_stream.reserved_5 = 0x7; pmt_stream.elementary_PID = 0x100; pmt_stream.reserved_6 = 0xf; pmt_stream.ES_info_length = 0x0; set_pmt_pack.PMT_Stream.push_back(pmt_st...
typedef struct TS_PMT_Stream { unsigned stream_type : 8; //指示特定PID的节目元素包的类型。该处PID由elementary PID指定 unsigned elementary_PID : 13; //该域指示TS包的PID值。这些TS包含有相关的节目元素 unsigned ES_info_length : 12; //前两位bit为00。该域指示跟随其后的描述相关节目元素的byte数...
PAT表解析:12字节的头 + 6 字节* n个音视频流(包含 stream_type(8bit), reserved (3bit), elementary_PID(13bit),reserved (4bit), ES_info_length(12bit)) PMT的数据:02 B0 1D 00 01 C1 00 00 E1 00 F0 00 02 E1 00 F0 00 03 E1 01 F0 06 0A 04 75 6E 64 00 94 9D 2D F0 PAT头...
DVB系统提出了一个SDT表格,该表格标志一个节目的名称,并且能和 PMT中的PID联系起来,这样用户就可以通过直接选择节目名称来选择节目了. SDT, Service description section,服务描述段 SDT可以提供的信息包括: (1) 该节目是否在播放中 (2) 该节目是否被加密 (3) 该节目的名称 SDT定义如下: 各字段定义如下: table...
通过sync_byte=0x47找到ts packet的起始位置,通过ts header中PID在0x0010~0x1FFE中(不固定)确认是PMT,也就是ts payload中table_id为0x02的TS包,读取流类型(stream_type)及携带该类型流的ts packet的PID(elementary_PID)。此时就找到的音频流的PID和视频流的PID,流PID都存储于ts header中的PID字段。
PMT定义如下: 各字段含义如下:table_id:8bits的ID,应该是0x02 section_syntax_indicator:1bit的段语法标志,应该是''1'' ''0'':固定是''0'',如果不是说明数据有错. reserved:2bits保留位,应该是''00''section_length:16bits段长度,从program_number开始,到CRC_32(包含)的字节总数.
–节目映射表Program Map Tables (PMT) –条件接收表Conditional Access Table (CAT) 0x0001 –网络信息表Network Information Table(NIT) 0x0010 –传送流描述表Transport Stream Description Table (TSDT) ? 2、节Section: 将表格的内容映射到TS流中;
由代码可以看出节目元素表为:std::vector PMT_Stream;是一个容器,里面包含了该节目需要的所有媒体流:音频流,视频流,字幕流等。因此一般情况下,一个PMT里面由两个TS_PMT_Stream代表两种流(视频流,音频流),通过TS_PMT_Stream里的元素PID来获取TS协议中的流媒体数据。
PAT 表的和 PMT 表需 要定期插⼊ ts 流,因为⽤户随时可能加⼊ ts 流,这个间隔⽐较⼩,通常每隔⼏个视频帧就要加⼊ PAT 和 PMT。PAT 和 PMT 表是必须的,还可以加⼊其它表如 SDT(业务描述表)等,不过 hls 流只要有 PAT 和 PMT 就可以播放了。
typedef struct TS_PMT_Stream { unsigned stream_type : 8; //指示特定PID的节目元素包的类型。该处PID由elementary PID指定 unsigned elementary_PID : 13; //该域指示TS包的PID值。这些TS包含有相关的节目元素 unsigned ES_info_length : 12; //前两位bit为00。该域指示跟随其后的描述相关节目元素的...