一种数据处理方法、智能终端及计算机可读存储介质与流程

文档序号:29969346发布日期:2022-05-11 11:03阅读:56来源:国知局
1.本发明涉及电视广播
技术领域
:,尤其涉及一种数据处理方法、智能终端及计算机可读存储介质。
背景技术
::2.atsc3.0是由全球性组织atsc(advancedtelevisionsystemcommittee)制定的新一代数字电视广播标准,相比于之前的系统,atsc3.0实现了无线三网融合,对地面电视频谱的利用更加高效,支持4kuhdtv与3d多声道音频。目前主要广播电视基于dvb标准(digitalvideobroadcasting,数字视频广播),先通过机顶盒接收广播信号,然后再将广播信号通过dvb数字接收机的硬件复用模块,进行统一快速的解码。但是atsc3.0出来的时间较短,大部分厂商都还在摸索阶段,仍无类似于dvb数字接收机的硬件解复用模块,数据包的接收和处理全部需要软过滤。3.因此,目前基于atsc3.0协议的数据包的处理方法有待改进和提高。技术实现要素:4.本发明的主要目的在于提供一种数据处理方法、智能终端及计算机可读存储介质,旨在解决现有技术中缺乏基于atsc3.0协议的数据包处理方法的问题。5.为实现上述目的,本发明提供一种数据处理方法,所述数据处理方法包括如下步骤:6.获取待处理的alp数据包;7.根据所述alp数据包的结构信息,将所述数据包的头部和负载拆分,生成头部数据和负载数据;8.对所述头部数据进行解析,生成格式信息;9.根据所述格式信息,对所述负载数据进行转换,生成网络数据。10.可选地,所述的数据处理方法,其中,所述获取待处理的alp数据包,具体包括:11.判断预设的缓存区中是否存在缓存数据包;12.若存在,则将所述缓存数据包作为待处理的alp数据包并获取。13.可选地,所述的数据处理方法,其中,所述格式信息包括ip格式和传输流格式。14.可选地,所述的数据处理方法,其中,所述根据所述格式信息,对所述负载数据进行转换,生成网络数据,具体包括:15.当所述格式信息为ip格式时,将所述负载数据转换为ip格式的网络数据;16.当所述格式信息为传输流格式时,将所述负载数据转换为传输流格式的网络数据。17.可选地,所述的数据处理方法,其中,所述根据所述格式信息,对所述负载数据进行转换,生成网络数据之后,还包括:18.根据预设的过滤器,对所述网络数据进行过滤,生成目标数据;19.执行与所述目标数据对应的操作。20.可选地,所述的数据处理方法,其中,所述过滤器包括ip过滤器和传输流过滤器。21.可选地,所述的数据处理方法,其中,所述数据处理方法还包括:22.当发送ip数据请求时,根据所述ip数据请求,创建所述ip过滤器。23.可选地,所述的数据处理方法,其中,所述根据预设的过滤器,对所述网络数据进行过滤,生成目标数据,具体包括:24.当所述网络数据的格式为传输流格式时,将所述网络数据输入预设的传输流过滤器,并控制所述传输流过滤器对所述网络数据进行过滤,生成过滤数据;25.根据预设的节目专用信息,确定所述过滤数据对应的回调函数;26.根据所述回调函数,将所述过滤数据存储至预设的数据结构中,生成目标数据。27.此外,为实现上述目的,本发明还提供一种智能终端,其中,所述智能终端包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据处理程序,所述数据处理程序被所述处理器执行时实现如上所述的数据处理方法的步骤。28.此外,为实现上述目的,本发明还提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储有数据处理程序,所述数据处理程序被处理器执行时实现如上所述的数据处理方法的步骤。29.本发明先将所述alp数据的头部和负载拆分,然后根据头部的格式信息,将负载数据转换为相对应的网络数据,例如ip数据、传输流数据、信令数据。降低了使用的复杂度,并利用原本就有的常规网络协议的驱动实现并进行利用,实现基于atsc3.0的广播的alp数据和常规网络数据的处理,将转换为网络数据以常规的处理方式进行处理网络数据,从而使后续传输给上层的数据处理时,不需要再考虑数据包的类型,同时也方便调试应用层的工作。由于本方案主要是在底层进行变换和处理,因此能够降低对cpu的占用,从而提高后续处理的简便性。30.此外,本发明还在获取alp数据过程中,设置缓存区的方式,减少了数据拷贝。针对ip数据,设置有ip过滤器,当发出ip数据请求时,针对该请求,设置对应的过滤器,从而提高了获取的数据的有效性。而针对传输流数据,也设置有专门的过滤器,并通过该过滤器,实现对其转换为可供上层使用的目标数据。附图说明31.图1是本发明数据处理方法提供的实施例的流程图;32.图2是本发明数据处理方法中当所述网络数据为ip数据时,物理层接收处理流程的示意图;33.图3是本发明数据处理方法中整体接收处理流程的示意图;34.图4为本发明智能终端的较佳实施例的运行环境示意图。具体实施方式35.为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。36.本发明较佳实施例所述的数据处理方法,如图1所示,所述数据处理方法包括以下步骤:37.步骤s100,获取待处理的alp数据包。38.具体地,atsc3.0工作组于2016年5月24日发布了候选标准atsc链路层协议(atsccandidatestandard:link-layerprotocol,alp),alp协议位于开放式系统互联osi(opensysteminterconnect,osi)七层网络结构中的数据链路层。在本实施例中,所述数据处理方法以程序的形式安装于atsc调制器上,与一台广播电视连接。atsc调制器能够接收网络信号和广播信号,当用户锁频时,就是锁定当前接收的广播信号的频率时,atsc调制器会源源不断地接收广播站台发送的广播信号,广播信号由基于atsc协议搭建的广播站台发送。广播站台先将数据封装为alp数据包,然后以信号波的形式向外发送。基于用户所锁定的频率,atsc调制器接收广播站台的信号,并将其转换为二进制信号,得到alp数据包。在一种实施方式中,atsc调制器接收的alp数据包直接视为待处理的数据包进行数据处理操作。39.进一步地,在本实施例的另一种实施方式中,步骤s100包括:40.步骤s110、判断预设的缓存区中是否存在于缓存数据包。41.具体地,套接字(socket)是计算机之间进行通信的一种约定或一种方式,通过socket约定,一台服务器或客户端能够接收其他服务器或客户端的数据,也可以向其它服务器或客户端发送数据。一般使用不同的函数发送和接收socket数据,以linux为例,使用write()函数可以向socket中写入数据,使用read()可以从套接字中读取数据。而write()函数不是立刻向网络传输数据,而是先将数据写入缓存区,再通过协议将数据从缓冲区发送到目标客户端或服务器,本实施例中,通讯协议独立于write()/send()函数,数据有可能刚被写入缓冲区就发送到网络,也可能在缓冲区中不断积压,多次写入的数据被一次性发送到网络,这取决于当时的网络情况、当前线程是否空闲等诸多因素。因此所述atsc调制器的物理层在接受所述广播站台发送的alp数据包后,一般需要将其存入socket缓存区。因此所述atsc接收到的alp数据包并非一开始就会进行数据处理操作,而是先存储在socket缓存区,同时对socket进行数据监听,以判断所述缓存区中是否存在缓存数据包。42.步骤s120、若存在,则将所述缓存数据包作为待处理的alp数据包并获取。43.具体地,若存在缓存数据,则获取所述缓存数据包,并作为待处理的alp数据包,进行后续的数据处理步骤。44.步骤s200,根据所述alp数据包的结构信息,将所述数据包的头部和负载拆分,生成头部数据和负载数据。45.具体地,一个alp数据包由一个alp头部和数据载荷组成。其中头部包括一个基本头部和可能的附加头部及可选头部。针对不同的源数据包,alp头部中的附加头部和可选头部可能不同。但alp数据包有其固定的通用结构,它的基本头部长度为2字节,而基本头部包含了四个部分,分别是数据包类型、负荷结构(payloadconfiguration,pc)、头部类型(headermode,hm)、分段串联(segmentationconcatenation,s/c)和长度。其中,数据包类型为3比特(bit),说明所述数据包的格式或者所述数据包采用的协议,例如010表示ip包,111表示传输流包;pc表示负载的配置信息,如数值为0,表示负载为单一包,并没有分段或连接的情况,其后接的是hm;数值为1,表示负载为一个打包的一部分或多个包的连接,其后连接着s/c;所述长度说明了负载的长度。46.虽然所述alp数据包是以0和1的形式存在的,但是由于其头部的0和1的排列顺序和位置,可获取其中的结构信息,例如负荷结构等。根据所述结构数据,可确定所述数据包的头部和负载。例如所述alp数据包仅包含基本头部,则直接以2字节为节点,将所述alp数据包拆分为头部数据和负载数据。此外,附加头部等都是有一个固定长度,因此根据结构数据,可将所述alp数据包拆分为头部数据和负载数据。47.步骤s300,对所述头部数据进行解析,生成格式信息。48.具体地,所述头部数据中的前三个比特代表着所述alp数据包中所想要解析出来的网络数据所使用的协议,也就是网络数据的格式类型。在atsc3.0协议中,已经规定了不同的值所对应的含义,例如000代表ipv4包,010表示压缩过的ip包,100表示链路层信令包,111表示活动图像专家组-2传输流(movingpictureexpertsgrouptransportstream,mpge-2ts)包。因此,对所述头部数据解析后,可生成后续生成网络数据的格式信息。49.步骤s400,根据所述格式信息,对所述负载数据进行转换,生成网络数据。50.具体地,在得到所述网络数据后,将其传输到网络驱动的网络层,在所述网络层的驱动模块中,通过标准的网络协议进行数据转换,生成网络数据,并通过标准的网络层驱动模块将生成的网络数据传输至上层,也就是用户层。若所述格式信息为ipv4包,则基于标准的ip协议,对所述负载数据进行转换,生成网络数据。若所述格式信息为传输流格式时,以目前最广泛使用的mpge-2ts为例,则基于传统的mpge-2ts转换方法,对所述负载数据进行转换,生成网络数据。值得注意的是,为提高传输效率,alp协议提供了一种减小mpge-2ts开销的机制,每一个包中的同步字节(0x47)总是被删除。同样也提供可选的空包删除和相似ts头部删除的机制。被删除的空包会通过alp数据包中头部数据中的删除空包(deletednullpackets,dnp)字段恢复。dnp说明了这个ts包之前删除的空包个数,由于空包本身是无有效数据的,因此直接根据空包个数,恢复负载数据,也就是mpge-2ts数据中的空包。空包恢复后,再将所述负载数据转换为网络数据。51.进一步地,所述步骤s400之后,还包括:52.步骤s410、根据预设的过滤器,对所述网络数据进行过滤,生成目标数据。53.具体地,所述过滤器包括ip过滤器和传输流过滤器。54.其中,针对所述ip过滤器,由于用户在锁频的时候,数据是源源不断流入的,但是接收的数据中存在很多噪音信号,例如来源于不同的ip地址的访问或数据,因此,当发送ip数据请求时,根据所述ip数据请求,例如001.100,创建一个ip过滤器,当所述网络数据中的ip地址与所述目标地址相同,例如也是001.100,则保留所述网络数据;若不相同,如为001.110,则将所述网络数据删除,减少无效数据和限制访问。此外,所述网络数据中还包含端口号、传输层协议等,也可以针对性的设置不同的ip过滤器,以达到筛除无用数据的效果。55.其中,针对所述传输流过滤器,步骤s410包括:56.步骤s411、当所述网络数据的格式为传输流格式时,将所述网络数据输入预设的传输流过滤器,并控制所述传输流过滤器对所述网络数据进行过滤,生成过滤数据。57.具体地,传输流过滤器与上述ip过滤器不同,传输流数据在传统的数字电视中就存在过滤器。在本实施例中,以ts流进行该过程的简单描述。预先定义一些数据结果以及创设一个传输流过滤器。当检索到有效的网络数据的字段时,将所述网络数据,即ts流,送入所述传输流过滤器,并控制所述传输流过滤器对所述网络进行过滤,生成过滤数据。58.步骤s412、根据预设的节目专用信息,确定所述过滤数据对应的回调函数。59.具体地,所述atsc调制器中存在节目专用信息(programspecificinformation,psi),所述节目专用信息包括节目关联表(programassociationtable,pat)、节目映射表(programmaptable,pmt)、网络信息表(networkinformationtable,nit)和业务描述表(servicedescriptiontable,sdt)。其中,pat表中分别给出了pmt和nit对应的包装标识符(packetidentifier,pid)。只要解析出pat表中我们需要的pid是可以找出对应的pmt表和nit,pmt中有对应音频/视频pid,sdt中是可以解析出各路节目的一些我们需要的节目描述信息。先根据所述过滤数据中的pid值,再根据pat表,确定对应的pmt和nit,在过滤过程中,只要找到这四个表中的任何一个,就根据寻找到的表,确定对应的回调函数。60.步骤s413、根据所述回调函数,将所述过滤数据存储至预设的数据结构中,生成目标数据。61.具体地,根据所述回调函数,将所述过滤数据通过回调的方式,存储至预设的数据结构中,从而网络结构中的上层,也就是用户层,得到所述目标数据。62.步骤s420、执行与所述目标数据对应的操作。63.具体地,若所述目标数据是传输流数据,则将所述目标数据传输至所述广播电视,并控制所述广播电视播放对应的视频。若所述目标数据为ip数据,可能是显示某个页面,则控制所述广播电视显示所述页面;也可能是某个图像,则在预设的显示框架中显示所述图像。因此,在得到所述目标数据后,可采用与常规的网络数据,例如解析ip包后的ip数据,相同的处理方式,执行与所述目标数据对应的操作。64.若所述atsc调制器接收到关闭接收的指令,则说明当前不需要再进行数据处理,可停止对所述socket缓存区进行监控,结束整个数据接收处理的流程。65.因此,这种方法通过设置缓存区的方式,减少了数据拷贝,同时降低了使用的复杂度,并利用原本就有的常规网络协议的驱动实现并进行利用,实现基于atsc3.0的广播的alp数据和常规网络数据的处理,将转换为网络数据以常规的处理方式进行处理,从而使后续进行上层的数据处理时,不需要再考虑数据包的类型,同时也方便调试应用层的工作。66.进一步地,如图4所示,基于上述数据处理方法,本发明还相应提供了一种智能终端,所述智能终端包括处理器10、存储器20及显示器30。图4仅示出了智能终端的部分组件,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。67.所述存储器20在一些实施例中可以是所述智能终端的内部存储单元,例如智能终端的硬盘或内存。所述存储器20在另一些实施例中也可以是所述智能终端的外部存储设备,例如所述智能终端上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,所述存储器20还可以既包括所述智能终端的内部存储单元也包括外部存储设备。所述存储器20用于存储安装于所述智能终端的应用软件及各类数据,例如所述安装智能终端的程序代码等。所述存储器20还可以用于暂时地存储已经输出或者将要输出的数据。在一实施例中,存储器20上存储有基于atsc3.0的数据处理程序40,该基于atsc3.0的数据处理程序40可被处理器10所执行,从而实现本技术中数据处理方法。68.所述处理器10在一些实施例中可以是一中央处理器(centralprocessingunit,cpu),微处理器或其他数据处理芯片,用于运行所述存储器20中存储的程序代码或处理数据,例如执行所述数据处理方法等。69.所述显示器30在一些实施例中可以是led显示器、液晶显示器、触控式液晶显示器以及oled(organiclight-emittingdiode,有机发光二极管)触摸器等。所述显示器30用于显示在所述智能终端的信息以及用于显示可视化的用户界面。所述智能终端的部件10-30通过系统总线相互通信。70.在一实施例中,当处理器10执行所述存储器20中基于atsc3.0的数据处理程序40时实现以下步骤:71.获取待处理的alp数据包;72.根据所述alp数据包的结构信息,将所述数据包的头部和负载拆分,生成头部数据和负载数据;73.对所述头部数据进行解析,生成格式信息;74.根据所述格式信息,对所述负载数据进行转换,生成网络数据。75.其中,所述获取待处理的alp数据包,具体包括:76.判断预设的缓存区中是否存在缓存数据包;77.若存在,则将所述缓存数据包作为待处理的alp数据包并获取。78.其中,所述格式信息包括ip格式和传输流格式。79.其中,所述根据所述格式信息,对所述负载数据进行转换,生成网络数据,具体包括:80.当所述格式信息为ip格式时,将所述负载数据转换为ip格式的网络数据;81.当所述格式信息为传输流格式时,将所述负载数据转换为传输流格式的网络数据。82.其中,所述根据所述格式信息,对所述负载数据进行转换,生成网络数据之后,还包括:83.根据预设的过滤器,对所述网络数据进行过滤,生成目标数据;84.执行与所述目标数据对应的操作。85.其中,所述过滤器包括ip过滤器和传输流过滤器。86.其中,所述数据处理方法还包括:87.当发送ip数据请求时,根据所述ip数据请求,创建所述ip过滤器。88.其中,所述根据预设的过滤器,对所述网络数据进行过滤,生成目标数据,具体包括:89.当所述网络数据的格式为传输流格式时,将所述网络数据输入预设的传输流过滤器,并控制所述传输流过滤器对所述网络数据进行过滤,生成过滤数据;90.根据预设的节目专用信息,确定所述过滤数据对应的回调函数;91.根据所述回调函数,将所述过滤数据存储至预设的数据结构中,生成目标数据。92.本发明还提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储有基于atsc3.0的数据处理程序,所述基于atsc3.0的数据处理程序被处理器执行时实现如上所述的数据处理方法的步骤。93.综上所述,本发明提供一种数据处理方法、智能终端及计算机可读存储介质,所述方法包括:(从权内容)。本发明(有益效果简写)。94.当然,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关硬件(如处理器,控制器等)来完成,所述的程序可存储于一计算机可读取的计算机可读存储介质中,所述程序在执行时可包括如上述各方法实施例的流程。其中所述的计算机可读存储介质可为存储器、磁碟、光盘等。95.应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1