一种应急广播音视频ts流数据解析方法及系统的制作方法

文档序号:9492219阅读:495来源:国知局
一种应急广播音视频ts流数据解析方法及系统的制作方法
【技术领域】
[0001]本发明涉及一种音视频TS流解析方法及系统,特别是涉及一种适用于应急广播的音视频TS流数据解析方法及系统。
【背景技术】
[0002]当国家或地区遭遇突发事件(包括自然灾害、环境灾害和人文灾害),可能造成重大人员伤亡、财产损失和社会危害,危及公共安全。高效的信息广播系统是建成这一体系的关键技术手段。这一系统作为危机预警、应急的综合信息中心和公共危机管理的指挥联动系统,必须能在短时间内将预警信息或应急信息覆盖到国内某一地区尽可能广的地域及尽可能多的群众。
[0003]经过信道解码和安全性检验的应急广播传输流中包含应急广播文本内容和应急广播音频广播节目。应急广播文本内容包含应急广播调度控制信息和应急广播文本信息;应急广播音频广播节目包含多个语种的音频广播节目。接收解析服务器收录到传输流后进一步解析上述信息,然后根据应急广播文本内容判断是否响应,输出应急广播音频节目,从而实现应急广播节目的选择性区域播放。
[0004]应急广播传输流采用TS包来承载,TS包的长度为188字节。应急广播传输流符合《GB/T 17975.1-2010信息技术运动图像及其伴音信息的通用编码第1部分:系统》中定义的传输流和传输流分组层结果。应急广播传输流包含《GB/T 17975.1-2010信息技术运动图像及其伴音信息的通用编码第1部分:系统》中定义的节目相关表(PAT,ProgramAssociat1n Table)和节目映射表(PMT,Program Map Table)信息。一路传输流由多路PES(Packetized Elementary Stream,打包基本流)包组成,传输流解复用就是从传输流中分离出各路PES的过程。解复用器从输入的传送流中过滤出那些PID(Packet Identifier,包识另IJ)为特定值的包,并将其有效内容输出到解码器专用的存储器中。PSI(Program SpecificInformat1n,节目专用信息)表中的PAT和PMT指出传送流的结构以及各PES包所在传送包的PID,如图1所示。
[0005]现有技术中,对应急广播进行音视频TS流数据解析时,解析过程复杂,无法有效快速的提取出应急广播数据,从而使应急广播音频信息提取时效性差,无法及时播放应急广播内容。

【发明内容】

[0006]本发明要解决的技术问题是提供一种提取过程简单,时效性好的应急广播TS流数据解析方法及系统。
[0007]本发明采用的技术方案如下:一种应急广播音视频TS流数据解析方法,具体方法步骤为:
一、将解复用器过滤的PID值设为0x0000,即PAT的PID,找到PAT表所在TS包并读取PAT的数据; 二、分析PAT数据,得到传送流中包含的节目个数,每一路节目都对应一个PMT,PMT的PID在PAT中给出;
三、欲播放某一路节目时,需设置解复用器过滤的PID值为该路节目对应的PMT的PID,得到PMT数据;
四、分析PMT数据,得到该路节目包含的视频和音频TS流各自所在传送包的PID;
五、将解复用器过滤的PID值分别设置为视频和音频的传送包的PID值,解复用器把各路PES包送往相应的解码器。
[0008]应急广播音频TS包和普通音视频节目TS包是复用到一起传输的,发射台应急广播接收设备设置在专用频点即可从传输流中接收解析应急广播节目。
[0009]如图2所示,其中,应急广播音频TS流解析方法步骤为:
1、解析出TS流的基本信息,包括PAT表、PMT表和音频TS包的PID值;
2、根据获取到的基本信息,解析音频TS包,从音频TS包中提取出音频PES包;从PES包中获取到想要的音频ES流数据。
[0010]获取音频TS流的基本信息主要是获取音频TS包的PID的值,然后根据获取到的音频的PID的值,方便后续的音频TS包的分离以及从音频TS包中提取音频基本流的数据。而从音频TS流中获取基本信息主要包括获取TS流中的PAT表、PMT表。在获取到了音频TS包的PID后,解析每个音频TS包,从中获取音频PES包,然后再从音频的PES包中获取音频ES流数据,即达到了音频基本流数据的提取目的。
[0011]如图3所示,其中,所述步骤1的具备方法步骤为:
1-1、从音频TS流中获取到PAT表;
1-2、解析PAT表,获取其中包含的PMT表的信息,包括:PMT表的PID和PMT表的节目号;
1-3、根据PAT表中解析获取到的PMT表的PID的值,在音频TS流中搜索满足该PID值的TS包。
[0012]PAT表即节目关联表,且无论是单路节目流或者多路节目流,都只有一个PAT表。获取PAT表的方法是判断当前的TS包的PID值是否为0x0000,PAT表的PID值是固定值不可以改变的。其在PAT表中,PMT表的PID和PMT表的节目号分别是使用program_map_PID字段和program_number字段表示。PMT也称作节目映射表。按照数字广播电视的协议,在PMT表中,其包含了当前节目的重要信息,同理在应急广播系统中,其包含了音频数据的重要信息,主要就是音频基本流的类型和音频基本流所在的TS包的PID值。音频基本流的类型是使用字段Steam_type表示的,在应急广播中支持的音频数据流的类型主要包括MPEG格式。Elementary_PID字段表示音频TS包的PID值。
[0013]所述步骤1-1中获取的音频TS流的基本信息在接收模块预收录的过程中完成。
[0014]预收录的音频TS流为2M。
[0015]因为TS包的大小为188B,一般预收录2M的数据即可以获取到基本信息。因为2M的数据量约包含1万个TS包,根据PAT表和PMT表的交叉插入可知。在2M大小的数据流中,必包含需要的基本信息。
[0016]如图4所示,所述步骤2的具体方法步骤为:
2-1、获取音频TS包的PID; 2-2、获取音频TS包;
2-3、音频TS包中获取音频PES包;
2-4、提取音频ES数据。
[0017]从音频基本流的提取的流程图中可以看出。首先获取音频TS包,然后从音频TS包中获取音频PES包。音频PES包也称作音频打包基本流。主要的作用是将音频基本流打包成长度可变的数据包,方便保存在TS包中承载。实现音频PES包的提取就是将TS包中的非音频PES包的数据剥离出去。在数字电视广播相关协议中,PES包的结构定义分为PES的包头数据,PES包的首部数据以及PES包的有效数据,其中的PES包的有效数据即是ES流数据。当从音频TS包中提取出音频PES包后,依据PES包的结构,从PES包中分离出最终需要的音频ES流数据。音频ES流也称作音频基本流。它是音频数据经过音频编码后输出的,是能够使用播放器或者外设终端直接播放的数据流。音频ES流的结构又可以分为保存主要数据的编码数据和存储信息数据的单元头。
[0018]所述步骤2-1之前的方法步骤还包括,判断当前的音频TS包中是否包含了音频PES头,如果不包含,则需要舍弃该TS包,继续向后查询,直到找到第一个音频PES头。以能保证获取到的音频ES流数据是完整的基本数据流。
[0019]所述方法还包括,对PES头进行解析时,当音频流中包含时间数据时,对音频数据流的时间进行校验。
[0020]一种应急广播音视频TS流解析系统,其特征在于,包括相连的解复用器和解码器,还包括,
与解复用器相连的PID值设置模块,对解复用器过滤的PID值进行设置;
TS包查找模块,根据设置的PID值所代表的表格,找到该表格所在的TS包;
PAT数据读取模块,读取特定TS包中的PAT数据;
PAT数据分析模块,得到传送流中包含的节目个数;
PMT数据读取模块,查找某一路节目的PMT,并在所述PID值设置模块设置该PMT的PID值,得到PMT数据;
PMT数据分析模块,得到该路节目包含的视频和音频TS流各自所在传送包的PID ;
PES包查找模块,根据PMT数据分析模块得到的PID值,设置PID值设置模块的PID值,得到各路PES包。
[0021]与现有技术相比,本发明的有益效果是:提取过程简单,时效性好,能够更快速解析提取出应急广播TS流数据。
【附图说明】
[0022]图1为PSI表与传输流结果的对应关系示意图。
[0023]图2为本发明音频TS流解析流程示意图。
[0024
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1