一种TS流快速识别方法及装置制造方法及图纸

技术编号:19638809 阅读:41 留言:0更新日期:2018-12-01 19:02
本发明专利技术公开了一种TS流快速识别方法及装置,其中方法包括:启动播放器,搜索节目,并将搜索到的节目生成节目列表;用户选择想要观看的节目;播放器将所选节目的码流信息发送给适配器;播放器从适配器获取相应的节目流;依次对获取到的节目流的数据包执行缓存过滤处理,并将处理后的数据包按照过滤的顺序加入至播放器的缓存中;将缓存数据发送给解码模块后,继续获取下一段数据处理并缓存,同时所述解码模块接收缓存数据并分析,获取节目的解码参数;如果分析失败,丢弃当前数据,继续从缓存的数据中取下一段缓存数据重新进行分析;如果分析成功,解码并播放节目。本发明专利技术对码流进行预处理以及改造形成新的节目信息数据,使得节目解码速度大大加快。

【技术实现步骤摘要】
一种TS流快速识别方法及装置
本专利技术涉及音视频流处理方法,尤其涉及一种基于wifidongle的媒体播放器快速获取节目TS流进行播放的方法及系统。
技术介绍
在任何解码器解码前,Player中的解码模组单元都需要先读入一段码流数据进行分析,获取当前节目的解码参数,如音视频格式、码率、帧率、声道数、采样率等等才能进行解码输出。以基于wifidongle的直播节目播放为例,现有技术的步骤为:1.搜索节目,并显示节目列表;2.用户从节目列表中选择节目进行播放;3.Player与WiFiDongle进行交互,WiFiDongle将选中节目的相关ES流传输给Player;4.Player的解码器模组读入原始TS数据流进行分析,获取解码参数;5.解码模块进行解码,并渲染输出。该现有技术存在以下三个问题:1.由于TS流是多节目复合流,即一个TS传输流中包括一个或多个节目流,PSI表中也即包含对所有节目的描述,而对于解码模块单元,输入当前的AV节目流的同时还要输入PSI表信息,此时PSI中非当前播放节目的信息会对解码模块造成解析识别上的干扰,延迟了解码识别或者识别不到问题。2.由于直播节目,节目切换时新旧节目流的过度,如果上一节目的残余码流输入到解码模组,则同样会对解码器造成解析干扰。导致节目解析大大延迟或出错不能播放等问题。3.用于解析解码参数的码流数据缓存区大小有限制,对于高码率的节目来说,并不一定能够从第一批数据中获取到解码参数,可能导致节目不能播放的问题。涉及的名词解释:DVB:数字视频广播;WiFiDongle:一种接收直播电视,并将其通过wifi通道传输出去的硬件设备;Player:流媒体播放器;UI:用户操作界面;PSI:节目专用信息,用于规定不同节目和节目中的不同成分如何复用成一个统一的码流;PID:在数字电视复用系统中它的作用好比一份文件的文件名,我们可以称它为“标志码传输包”。NIT:网络信息表,该表的PID是由PAT提供指出的。NIT主要是对多路传输流的识别,NIT提供多路传输流,物理网络及网络传输的相关的一些信息,如用于调谐的频率信息以及编码方式,调制方式等参数方面的信息。SDT:用于描述系统中各路节目的名称,该节目的提供者,是否有相应的时间描述表等方面的信息。PMT:节目映射表,该表是由PAT提供指出的。通过该表可以得到节目中包含的信息,例如,该路节目由哪些流构成和这些流的类型(视频,音频,数据),指定节目中各流对应的PID。ES:基本单元节目流,只包含一种内容的数据流,如只含视频或只含音频;CA_PMT:WIFIDongle用来从TS流中获取单节目流所需要的表;Tuner:协调器,锁定一个频率的频点,即接受特定频率的数字电视信号;Demodulator:解调器,用于将tuner锁定的频点上的信号码流解出标准流;Demux:解复用,TS流是多节目复用流,解复用可以将TS流分离单节目音视频流;Decoder:解码器,将压缩的数字音视频帧数据解码还原成原始的视频图像及音频序列。
技术实现思路
本专利技术为了解决上述现有技术中的问题,提出一种TS流快速识别方法,包括:步骤1,启动播放器,搜索节目,并将搜索到的节目生成节目列表;步骤2,用户选择想要观看的节目;步骤3,播放器将所选节目的码流信息发送给适配器;步骤4,播放器从适配器获取相应的节目流;步骤5,依次对获取到的节目流的数据包执行缓存过滤处理,实时过滤获取当前节目播放信息表,剔除非当前节目的信息,重新计算校正PSI/SI,并实时插入节目流中;实时过滤获取当前节目的音视频码流,剔除非当前节目的音视频码流,将数据包按照过滤的顺序加入至播放器的缓存中;步骤6,将缓存数据发送给解码模块,返回步骤4继续获取并缓存下一段数据,同时执行步骤7;步骤7,所述解码模块接收缓存数据并分析,获取节目的解码参数;步骤8,如果分析失败,丢弃当前数据,则返回步骤5取下一段缓存数据重新进行分析;如果分析成功,解码并播放节目。本专利技术还提出了一种TS流快速识别装置,包括:码流接收模块,接收音视频码流;过滤模块,用于实时过滤获取当前节目播放信息表,剔除非当前节目的信息,重新计算校正PSI/SI,并实时插入节目流中;实时过滤获取当前节目的音视频码流,剔除非当前节目的音视频码流,将数据包按照过滤的顺序加入至播放器的缓存中;解码模块,将缓存中的码流进行解码并发送给显示屏播放显示;命令控制模块,在播放器与适配器之间进行命令交互。本专利技术通过对音视频码流的预分析以及预处理,剔除与当前节目无关的干扰信息或数据,调整改造数据信息,使得解码模块单元可以精准快速的解析解码识别过程,从而缩短节目的起播时间,达到快速输出节目画面的目的。同时,增加分析解码参数的重试机制,降低解析出错的概率,确保Player能够将节目码流准确解码输出。附图说明图1为本专利技术的流程图;图2为本专利技术的缓存处理流程图;图3为本专利技术的系统框图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行详细、完整地说明。如图1所示,本专利技术提出的TS流快速识别方法,包括:启动播放器,用户选择自动或手动搜索节目,并将搜索到的节目生成节目列表,同时,播放器会将节目列表及相关信息存入数据库;用户从节目列表中,选择想要观看的节目;播放器将所选节目的码流信息发送给适配器WiFiDongle;播放器从适配器获取相应的节目流;然后播放器开始过滤接收PSI和节目音视频相关的码流数据,即依次对获取到的节目流的数据包执行缓存过滤处理,实时过滤获取当前节目播放信息表,剔除非当前节目的信息,重新计算校正PSI/SI,并实时插入节目流中;实时过滤获取当前节目的音视频码流,剔除非当前节目的音视频码流,将数据包按照过滤的顺序加入至播放器的缓存中;如图2所示,其具体的处理步骤为:判断播放器收到的数据包是否是SDT或者PAT;如果是SDT或者PAT,则对其进行改造,删除表中非当前节目的信息并重新计算CRC,使之成为一个描述单节目码流的表;用改造后SDT/PAT替换码流中原始的SDT/PAT,确保其位置与间隔与原始的SDT/PAT的位置和间隔完全一致;如果播放器收到的数据包不是SDT或者PAT,继续判断它是否是PMT;如果该数据包是PMT,则判断该PMT是否对应当前节目;若数据包为PMT但并不属于用户所选节目,则丢掉该数据包;确定数据包为当前节目的PMT,对其进行改造,去除其非ES相关的描述符;使用改造的PMT将替换码流中原始的PMT,确保其位置与间隔与原始的PMT保持一致;如果播放器收到的数据包不是PSI表,则判断该TS包是否是用户所选的音视频码流,若不是则将该数据包丢掉;将数据包按照过滤到的顺序加入到播放器的缓存中;在缓存的开始位置再次加入改造后的SDT,PAT,PMT表,便于之后解码模块能够快速解析出解码参数,这个步骤在所选节目的缓存数据第一次分析成功之前,都会执行一遍再发送给解码模块,用来提升快速解码的成功率;然后将缓存数据发给解码模块,然后继续进行下一批数据的缓存过滤处理,该缓存过滤处理是持续不间断进行的,之后解码的过程中,也会有新的数据不断被处理后缓存;解码模块对缓存数据进行分析,获取节目的解码参数;如果分析失败,则取下一段码流数据重新进本文档来自技高网
...

【技术保护点】
1.一种TS流快速识别方法,其特征在于,包括:步骤1,启动播放器,搜索节目,并将搜索到的节目生成节目列表;步骤2,用户选择想要观看的节目;步骤3,播放器将所选节目的码流信息发送给适配器;步骤4,播放器从适配器获取相应的节目流;步骤5,依次对获取到的节目流的数据包执行缓存过滤处理,实时过滤获取当前节目播放信息表,剔除非当前节目的信息,重新计算校正PSI/SI,并实时插入节目流中;实时过滤获取当前节目的音视频码流,剔除非当前节目的音视频码流,将数据包按照过滤的顺序加入至播放器的缓存中;步骤6,将缓存数据发送给解码模块,返回步骤4继续获取并缓存下一段数据,同时执行步骤7;步骤7,所述解码模块接收缓存数据并分析,获取节目的解码参数;步骤8,如果分析失败,丢弃当前数据,则返回步骤5取下一段缓存数据重新进行分析;如果分析成功,解码并播放节目。

【技术特征摘要】
1.一种TS流快速识别方法,其特征在于,包括:步骤1,启动播放器,搜索节目,并将搜索到的节目生成节目列表;步骤2,用户选择想要观看的节目;步骤3,播放器将所选节目的码流信息发送给适配器;步骤4,播放器从适配器获取相应的节目流;步骤5,依次对获取到的节目流的数据包执行缓存过滤处理,实时过滤获取当前节目播放信息表,剔除非当前节目的信息,重新计算校正PSI/SI,并实时插入节目流中;实时过滤获取当前节目的音视频码流,剔除非当前节目的音视频码流,将数据包按照过滤的顺序加入至播放器的缓存中;步骤6,将缓存数据发送给解码模块,返回步骤4继续获取并缓存下一段数据,同时执行步骤7;步骤7,所述解码模块接收缓存数据并分析,获取节目的解码参数;步骤8,如果分析失败,丢弃当前数据,则返回步骤5取下一段缓存数据重新进行分析;如果分析成功,解码并播放节目。2.如权利要求1所述的TS流快速识别方法,其特征在于,所述步骤5中在所选节目的缓存数据第一次分析成功之前,将数据包安装过滤的顺序加入至播放器的缓存中后,在缓存头部加上校正后的PSI/SI。3.如权利要求1所述的TS流快速识别方法,其特征在于,所述步骤5具体包括:步骤5.1,判断播放器收到的数据包是否是SDT或者PAT;步骤5.2,如果是SDT或者PAT,则对其进行改造,删除表中非当前节目的信息并重新计算CRC,使...

【专利技术属性】
技术研发人员:孙鹏车明贤刘学文陈玉杰洪观洲
申请(专利权)人:深圳国微视安科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1