1 TS流的解码过程(只考虑本地文件,解码只涉及到系统层打包的解码,不涉及到编码的解码)
TS流的基本解码过程:PAT节目关联表-》PMT节目映射表-》PES音频、视频包。
首先,从PAT获取TS流中所有节目映射表.
然后,从节目映射表中获取每个节目(本设计为本地文件,只含有一个PMT)数据(视频和音频)的PID。
最后,根据传输过来的数据PID对视频数据和音频数据进行系统层复用解码。系统层复用解码:循环:TS-》PES-》ES。
1.1 PAT解码:
PAT表携带以下信息:
(1)TS 流ID ---transport_stream_id,该ID标志唯一的流ID 。
(2)节目频道号-- program_number,该号码标志TS流中的一个频道, 该频道可以包含很多的节目(即可以包含多个Video PID 和Audio PID)
(3)PMT 的PID---program_map_PID,表示本频道使用的哪个PID做为PMT 的,因为PID可以有很多的频道, 因此DVB规定PMT 的PID 可以由用户自己定义.
1.2 PMT解码
PMT 表中包含的数据如下:
(1) 当前频道中包含的所有Video 数据的PID
(2