一种流式数据解析方法、装置及电子设备制造方法及图纸

技术编号:17842675 阅读:32 留言:0更新日期:2018-05-03 22:13
本发明专利技术的实施例公开一种流式数据解析方法、装置及电子设备,涉及数据解析技术,能够提升流式数据解析的兼容性。所述流式数据解析方法包括:接收待解析数据,如果所述待解析数据为流式数据,解析所述待解析数据的文件类型盒子,获取文件类型字段;如果文件类型字段标识为MP4文件,解析所述文件类型盒子后的原子结构;依据所述原子结构中包含的信息与预先设置的封装格式识别策略,识别所述待解析数据的MP4封装格式;调用识别的MP4封装格式映射的解析模块,对所述待解析数据进行解析。本发明专利技术适用于对各类封装的MP4文件进行解析。

Flow data analysis method, device and electronic device

The embodiment of the present invention discloses a flow data analysis method, device and electronic equipment, which involves data parsing technology, which can improve the compatibility of flow data analysis. The flow data analysis method includes: receiving the parsed data, if the parsed data is flow data, parses the file type box of the data to be parsed and gets the file type field; if the file type field is identified as the MP4 file, the atomic structure after the file type box is parsed; according to the original. The information contained in the substructure and the pre set packaging format recognition strategy recognizes the MP4 encapsulation format of the data to be parsed; the parse module mapped by the MP4 encapsulation format of the identified identification is parsed to the parsed data. The invention is suitable for parsing MP4 files of various packages.

【技术实现步骤摘要】
一种流式数据解析方法、装置及电子设备
本专利技术涉及数据解析技术,尤其涉及一种流式数据解析方法、装置及电子设备。
技术介绍
MP4是一套用于音频、视频信息的压缩编码标准,由国际标准化组织(ISO)和国际电工委员会(IEC)下属的动态图像专家组(MPEG,MovingPictureExpertsGroup)制定,MP4文件是一种基于ISO/IEC14496-12标准进行封装的媒体文件,相比采用其他封装格式封装的媒体文件,例如,RMVB、AVI、FLV、WMV、MKV等媒体文件,MP4文件具有更高的实用性和普及性,因而得到了广泛的应用。为了能够应用在不同的场景,MP4文件具有多种封装格式,包括:MP4-前置封装、MP4-后置封装、MP4-H5封装以及MP4-DASH封装。其中,MP4-前置封装以及MP4-后置封装既可以应用于文件数据场景,也可以应用于流式数据场景,当应用于文件数据场景,在客户端对封装的MP4文件(数据)进行解析时,可以通过获取封装的MP4文件(数据)中的文件句柄,利用文件句柄搜索索引,依据索引实现对数据的定位和解析,并从定位的数据开始播放。MP4-H5封装和MP4-DASH封装主要应用于流式数据场景,是较为新颖的流媒体技术,其中,采用MP4-H5封装的MP4文件可以在基于超文本标记语言5(HTML5,HyperTextMark-upLanguage5)框架的浏览器上实现无插件化播放,采用MP4-DASH封装的MP4文件需要在安装插件的浏览器上进行播放,但由于采用MP4-DASH封装的MP4文件采用流媒体的码率自适应传输技术,可以为客户端提供更好的用户体验。目前,对于流式数据场景,针对MP4-前置封装、MP4-H5封装和MP4-DASH封装,分别设计有相互独立的解析模块,对应解析相应的流式数据。在进行流式数据解析时,客户端获知接收的数据为流式数据后,通过调用一解析模块,对接收的数据进行解析,如果解析失败,再调用另一解析模块进行数据解析,直至数据解析成功或者调用的所有解析模块都解析失败,且目前还没有设计出针对MP4-后置封装的解析模块。但该流式数据解析方法,对于一流式数据,可能需要经过多次调用不同解析模块,对流式数据进行重复解析,才能解析成功,兼容性较低,使得解析流式数据所需的时间较长。
技术实现思路
有鉴于此,本专利技术实施例提供一种流式数据解析方法、装置及电子设备,能够提升流式数据解析的兼容性,以解决现有的流式数据解析方法中,需要多次调用不同解析模块,对流式数据进行重复解析导致的流式数据解析的兼容性较低的问题。第一方面,本专利技术实施例提供一种流式数据解析方法,包括:接收待解析数据,如果所述待解析数据为流式数据,解析所述待解析数据的文件类型盒子,获取文件类型字段;如果文件类型字段标识为MP4文件,解析所述文件类型盒子后的原子结构;依据所述原子结构中包含的信息与预先设置的封装格式识别策略,识别所述待解析数据的MP4封装格式;调用识别的MP4封装格式映射的解析模块,对所述待解析数据进行解析。结合第一方面,在第一方面的第一种实施方式中,所述依据所述原子结构中包含的信息与预先设置的封装格式识别策略,识别所述待解析数据的MP4封装格式包括:如果所述原子结构中的类型结构标识为索引结构,解析所述索引结构;如果解析的索引结构中的偏移表结构为空,解析分片结构,如果从解析的分片结构中获取到分片索引,识别所述待解析数据的MP4封装格式为MP4-DASH;如果未获取到分片索引,识别所述待解析数据的MP4封装格式为MP4-H5;如果解析的索引结构中偏移表不为空,识别所述待解析数据的MP4封装格式为MP4-前置。结合第一方面的第一种实施方式,在第一方面的第二种实施方式中,所述方法还包括:如果所述类型结构信息标识为数据结构,识别所述待解析数据的MP4封装格式为MP4-后置。结合第一方面、第一方面的第一种实施方式或第二种实施方式,在第一方面的第三种实施方式中,所述待解析数据的MP4封装格式为MP4-后置,所述调用识别的MP4封装格式映射的解析模块,对所述待解析数据进行解析包括:依据所述原子结构中前第一阈值字节的信息计算索引偏移;从所述索引偏移处请求数据,解析所述文件类型盒子后的原子结构;如果原子结构中的类型结构信息标识为索引结构,解析所述索引结构,得到索引;请求数据,依据所述索引对请求的数据进行解析。结合第一方面的第三种实施方式,在第一方面的第四种实施方式中,所述依据所述原子结构信息中前第一阈值字节的信息计算索引偏移包括:获取存储的预留索引偏移;将所述前第一阈值字节的信息对应的长度与所述存储的预留索引偏移相加,得到索引偏移;利用所述索引偏移更新所述存储的预留索引偏移。结合第一方面、第一方面的第一种实施方式或第二种实施方式,在第一方面的第五种实施方式中,所述方法还包括:解析层识别解析的所述待解析数据,如果是第一帧,且第一帧为B帧或P帧,丢弃所述B帧或P帧,如果第一帧为I帧,透传至播放层进行播放;如果不是第一帧,将解析得到的B帧或P帧或I帧透传至播放层进行播放。第二方面,本专利技术实施例提供一种流式数据解析装置,包括:文件类型字段获取模块、原子结构解析模块、封装格式识别模块以及解析模块,其中,文件类型字段获取模块,用于接收待解析数据,如果所述待解析数据为流式数据,解析所述待解析数据的文件类型盒子,获取文件类型字段;原子结构解析模块,如果文件类型字段标识为MP4文件,解析所述文件类型盒子后的原子结构;封装格式识别模块,用于依据所述原子结构中包含的信息与预先设置的封装格式识别策略,识别所述待解析数据的MP4封装格式;解析模块,用于调用识别的MP4封装格式映射的解析模块,对所述待解析数据进行解析。结合第二方面,在第二方面的第一种实施方式中,所述封装格式识别模块包括:第一处理单元、索引结构解析单元、第二处理单元、分片结构解析单元以及第三处理单元,其中,第一处理单元,用于判断所述原子结构中的类型结构标识是否为索引结构,如果是,通知索引结构解析单元;索引结构解析单元,用于解析所述索引结构;第二处理单元,用于判断解析的索引结构中的偏移表结构是否为空,如果是,通知分片结构解析单元;如果不是,识别所述待解析数据的MP4封装格式为MP4-前置;分片结构解析单元,用于解析分片结构;第三处理单元,用于判断解析的分片结构中是否包含分片索引,如果是,识别所述待解析数据的MP4封装格式为MP4-DASH;如果不是,识别所述待解析数据的MP4封装格式为MP4-H5。结合第二方面的第一种实施方式,在第二方面的第二种实施方式中,所述第一处理单元还用于如果所述类型结构信息标识为数据结构,识别所述待解析数据的MP4封装格式为MP4-后置。结合第二方面、第二方面的第一种实施方式或第二种实施方式,在第二方面的第三种实施方式中,所述待解析数据的MP4封装格式为MP4-后置,所述解析模块包括:索引偏移计算单元、数据请求单元、索引获取单元以及数据解析单元,其中,索引偏移计算单元,用于依据所述原子结构中前第一阈值字节的信息计算索引偏移;数据请求单元,用于从所述索引偏移处请求数据,解析所述文件类型盒子后的原子结构;索引获取单元,如果原子结构中的类型结构信息标识为索引结构,解析所述索引本文档来自技高网
...
一种流式数据解析方法、装置及电子设备

【技术保护点】
一种流式数据解析方法,其特征在于,包括:接收待解析数据,如果所述待解析数据为流式数据,解析所述待解析数据的文件类型盒子,获取文件类型字段;如果文件类型字段标识为MP4文件,解析所述文件类型盒子后的原子结构;依据所述原子结构中包含的信息与预先设置的封装格式识别策略,识别所述待解析数据的MP4封装格式;调用识别的MP4封装格式映射的解析模块,对所述待解析数据进行解析。

【技术特征摘要】
1.一种流式数据解析方法,其特征在于,包括:接收待解析数据,如果所述待解析数据为流式数据,解析所述待解析数据的文件类型盒子,获取文件类型字段;如果文件类型字段标识为MP4文件,解析所述文件类型盒子后的原子结构;依据所述原子结构中包含的信息与预先设置的封装格式识别策略,识别所述待解析数据的MP4封装格式;调用识别的MP4封装格式映射的解析模块,对所述待解析数据进行解析。2.根据权利要求1所述的流式数据解析方法,其特征在于,所述依据所述原子结构中包含的信息与预先设置的封装格式识别策略,识别所述待解析数据的MP4封装格式包括:如果所述原子结构中的类型结构标识为索引结构,解析所述索引结构;如果解析的索引结构中的偏移表结构为空,解析分片结构,如果从解析的分片结构中获取到分片索引,识别所述待解析数据的MP4封装格式为MP4-DASH;如果未获取到分片索引,识别所述待解析数据的MP4封装格式为MP4-H5;如果解析的索引结构中偏移表不为空,识别所述待解析数据的MP4封装格式为MP4-前置。3.根据权利要求2所述的流式数据解析方法,其特征在于,所述方法还包括:如果所述类型结构信息标识为数据结构,识别所述待解析数据的MP4封装格式为MP4-后置。4.根据权利要求1至3任一项所述的流式数据解析方法,其特征在于,所述待解析数据的MP4封装格式为MP4-后置,所述调用识别的MP4封装格式映射的解析模块,对所述待解析数据进行解析包括:依据所述原子结构中前第一阈值字节的信息计算索引偏移;从所述索引偏移处请求数据,解析所述文件类型盒子后的原子结构;如果原子结构中的类型结构信息标识为索引结构,解析所述索引结构,得到索引;请求数据,依据所述索引对请求的数据进行解析。5.根据权利要求4所述的流式数据解析方法,其特征在于,所述依据所述原子结构信息中前第一阈值字节的信息计算索引偏移包括:获取存储的预留索引偏移;将所述前第一阈值字节的信息对应的长度与所述存储的预留索引偏移相加,得到索引偏移;利用所述索引偏移更新所述存储的预留索引偏移。6.根据权利要求1至3任一项所述的流式数据解析方法,其特征在于,所述方法还包括:解析层识别解析的所述待解析数据,如果是第一帧,且第一帧为B帧或P帧,丢弃所述B帧或P帧,如果第一帧为I帧,透传至播放层进行播放;如果不是第一帧,将解析得到的B帧或P帧或I帧透传至播放层进行播放。7.一种流式数据解析装置,其特征在于,包括:文件类型字段获取模块、原子结构解析模块、封装格式识别模块以及解析模块,其中,文件类型字段获取模块,用于接收待解析数据,如果所述待解析数据为流式数据,解析所述待解析数据的文件类型盒子,获取文件类型字段;原子结构解析模块,如果文件类型字段标识为MP4文件,解析所述文件类型盒子后的原子结构;封装格式识别模块,用于依据所述原子结构中包含的信息与预先设置的封装格式识别策略,识别所述待解析数据的MP4封装格...

【专利技术属性】
技术研发人员:张龙辛安民金玲余翔
申请(专利权)人:杭州海康威视数字技术股份有限公司
类型:发明
国别省市:浙江,33

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

1