发明内容
本发明所要解决的技术问题是提供一种在视频通信中处理无效数据的方法,该方法能够对视频通信中的无效数据进行处理,以保证视频通信质量。
本发明另一目的是提供一种在视频通信中处理无效数据的系统,该系统能够对视频通信中的无效数据进行处理,以保证视频通信质量。
本发明一种在视频通信中处理无效数据的方法,包括:在接收端的缓存中获取数据帧;判断该数据帧是否完整,如否,将该数据帧置回缓存;如是,进一步判断该数据帧是否为无效数据,如是,对该数据帧内非零数据位置进行标识,依据上述标识去除零单元数据,拼合非零数据。
优选的,在判断该数据帧是否完整之前,还包括:确认已建立数据通道。
优选的,在确认已建立数据通道之前,还包括:确定该数据帧的前导字节不是特定标志位。
优选的,在确定该数据帧的前导字节不是特定标志位之前,还包括:确认该数据帧含有大于3的零单元数据。
优选的,在确认该数据帧含有大于3的零单元数据之前,还包括:判断该数据帧是否为完整的数据单元,如否,继续获取后续的数据帧,拼合成完整的数据单元。
优选的,进一步判断该数据帧是否为无效数据具体为:遍历该数据帧;如该数据帧间隔性的出现片段零单元数据,确定该数据帧为无效数据,否则为有效数据。
优选的,对非零数据位置进行标识具体为:确定非零元数据的起始位置和结束位置;对上述起始位置和结束位置进行编号。
本发明一种在视频通信中处理无效数据的系统,复用/解复用层与设备驱动适配层之间设有无效数据过滤层,所述无效数据过滤层包括数据帧获取模块、数据帧完整性判断模块、无效数据判断模块、及无效数据整理模块:所述数据帧获取模块,用于在接收端的缓存中获取数据帧;所述数据帧完整性判断模块,用于判断该数据帧是否完整,如否,将该数据帧置回缓存;如是,启动所述无效数据判断模块;所述无效数据判断模块,用于判断该数据帧是否为无效数据,如是,启动所述无效数据整理模块;所述无效数据整理模块,用于对该数据帧内非零数据位置进行标识,依据上述标识去除零单元数据,拼合非零数据。
优选的,还包括数据通道确认模块,用于确认已建立数据通道,启动所述数据帧完整性判断模块。
优选的,还包括标志位确定模块,用于确定该数据帧的前导字节不是特定标志位,启动所述数据通道确认模块。
优选的,还包括零单元数据确认模块,用于确认该数据帧含有大于3的零单元数据,启动所述标志位确定模块。
优选的,还包括数据单元判断模块,用于判断该数据帧是否为完整的数据单元,如否,继续获取后续的数据帧,拼合成完整的数据单元。
与现有技术相比,本发明具有以下优点:
本发明对接收到视频数据进行相应的判断,在确定每个数据帧完整的前提下,进一步判断该数据是否为无效数据,如是无效数据,则将无效数据中的零单元数据去除,将非零单元数据拼合,作为有效数据。因数据流中的大量的零单元数据是为保持通信双方能够按照64K比特流传输数据填充的,查找出这些零单元数据并去除,剩下的非零单元数据就是初始的有效数据,3G-324M协议解析能够解析处理后的数据,使得最终处理的视频图像更清晰。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明在视频通信中,从接收端的缓存中获取数据帧,确认该数据帧完整,但为无效数据时,去除该数据帧中的零单元数据,拼合非零数据,作为有效数据传送给后续应用程序解析处理,避免因数据帧包含零单元数据而不能被G-324M协议解析,影响视频图像质量。
参阅图4,示出本发明第一实施例的无效数据处理方法,具体步骤如下所述。
步骤S401、无效数据处理系统从接收端的缓存中获取数据帧。无效数据处理系统从视频通信接收端的缓存中获取一数据帧,该数据帧为二进制数据流。
步骤S402、判断该数据帧是否完整,如否,将该数据帧置回缓存,转到步骤S401;如是,转到步骤S403。判断该数据帧是否完整的依据是查看该数据帧是否包含数据帧头和数据帧尾,如包含,确认该数据完整;如不包含,则确认该数据帧不完整。
步骤S403、进一步判断该数据帧是否为无效数据,如不是无效数据,转到步骤S405;如是,转到步骤S404。判断该数据帧是否为无效数据的依据是遍历该数据帧,如该数据帧间隔性的出现片段零单元,确定该数据帧为无效数据,否则为有效数据。
步骤S404、对非零单元数据位置进行标识,依据该标识去除零单元数据,拼合非零单元数据,作为有效数据。数据帧为无效数据,表明该数据帧包含有无法解析处理的片段零单元数据,本发明确定非零数据的起始位置和结束位置,对上述起始位置和结束位置进行编号,这样就确定了片段零数据单元的位置,去除零单元数据,并将非零单元数据组合在一起,作为有效数据。
步骤S405、应用程序对该数据帧进行解析,处理成视频图像,在显示装置上显示。
本发明对接收到视频数据进行相应的判断,在确定每个数据帧完整的前提下,进一步判断该数据是否为无效数据,如是无效数据,则将无效数据中的零单元数据去除,将非零单元数据拼合,作为有效数据。因数据流中的大量的零单元数据是为保持通信双方能够按照64K比特流传输数据填充的,查找出这些零单元数据并去除,剩下的非零单元数据就是初始的有效数据,3G-324M协议解析能够解析处理后的数据,使得最终处理的视频图像更清晰。
参阅图5,为本发明视频通信图像效果图,图中接收端的视频图像清晰可见。相对于现有技术中图3所示的接收端视频图像,经本发明无效数据处理后的视频图像,更清晰,效果更佳。
为提高无效数据的处理效率,只去除影响视频图像质量无效数据,本发明在无效数据处理前,确认当前传输的数据为可影响视频图像质量的数据。
参阅图6,示出本发明第二实施例的无效数据处理方法,具体步骤如下所述。
步骤S601、无效数据处理系统从接收端的缓存中获取数据帧。无效数据处理系统从视频通信接收端的缓存中获取一数据帧,该数据帧为二进制数据流。
步骤S602、确认已建立数据通道。在通信双方数据通道建立前,发送端与接收端交互的数据为信令,该类数据不会对视频图像质量有影响,不需对该类数据进行无效数据处理,直接转到步骤S606;数据通道建立后,发送方与接收方交互的数据为视频数据和音频数据,转到步骤S603。
步骤S603、判断该数据帧是否完整,如否,将该数据帧置回缓存,转到步骤S601;如是,转到步骤S604。判断该数据帧是否完整的依据是查看该数据帧是否包含数据帧头和数据帧尾,如包含,确认该数据完整;如不包含,则确认该数据帧不完整。
步骤S604、进一步判断该数据帧是否为无效数据,如不是无效数据,转到步骤S606;如是,转到步骤S605。判断该数据帧是否为无效数据的依据是遍历该数据帧,如该数据帧间隔性的出现片段零单元,确定该数据帧为无效数据,否则为有效数据。
步骤S605、对非零单元数据位置进行标识,去除零单元数据,拼合非零单元数据,作为有效数据。数据帧为无效数据,表明该数据帧包含有无法解析处理的片段零单元数据,本发明确定非零数据的起始位置和结束位置,对上述起始位置和结束位置进行编号,这样就确定了片段零数据单元的位置,去除零单元数据,并将非零单元数据组合在一起,作为有效数据。
步骤S606、应用程序对该数据帧进行解析,处理成视频图像,在显示装置上显示。
本发明在通过数据传输通道的否是建立,判断此刻传输的数据是否为影响视频图像质量的视频数据和音频数据,如是,才进行无效数据处理,提高无效数据处理效率。
本发明在判断数据传输通道的否是建立之前,还通过判断该数据帧包含零单元数据的特性,及前导字节,判断该数据帧为无效数据可能性,如可能性大,则需进一步判断该数据帧是否为无效数据;如可能性小,则直接发送到应用程序进行后续处理,提高无效数据处理的准确性。
参阅图7,示出本发明第三实施例的无效数据处理方法,具体步骤如下所述。
步骤S701、无效数据处理系统从接收端的缓存中获取数据帧。无效数据处理系统从视频通信接收端的缓存中获取一数据帧,该数据帧为二进制数据流。
步骤S702、判断该数据帧是否含有大于3的零单元数据,如是,则确认该数据帧为无效数据的可能性较大,转到步骤S703;如否,则确认该数据帧为无效数据的可能性很大,转到步骤S708。
步骤S703、判断数据帧的前导字节是否为特定标志位,如是,表明该数据帧是无效数据的可能性很小,转到步骤S708;如否,表示该数据为无效的数据的可能性较大,转到步骤S704。特定标志位是指的3G-324M协议中特定的标志位,如数据帧大小标识位,数据帧分割位等。
步骤S704、确认已建立数据通道。在通信双方数据通道建立前,发送端与接收端交互的数据为信令,该类数据不会对视频图像质量有影响,不需对该类数据进行无效数据处理,直接转到步骤S708;数据通道建立后,发送方与接收方交互的数据为视频数据和音频数据,转到步骤S705。
步骤S705、判断该数据帧是否完整,如否,将该数据帧置回缓存,转到步骤S701;如是,转到步骤S706。判断该数据帧是否完整的依据是查看该数据帧是否包含数据帧头和数据帧尾,如包含,确认该数据完整;如不包含,则确认该数据帧不完整。
步骤S706、进一步判断该数据帧是否为无效数据,如不是无效数据,转到步骤S708;如是,转到步骤S707。判断该数据帧是否为无效数据的依据是遍历该数据帧,如该数据帧间隔性的出现片段零单元,确定该数据帧为无效数据,否则为有效数据。
步骤S707、对非零单元数据位置进行标识,去除零单元数据,拼合非零单元数据,作为有效数据。数据帧为无效数据,表明该数据帧包含有无法解析处理的片段零单元数据,本发明确定非零数据的起始位置和结束位置,对上述起始位置和结束位置进行编号,这样就确定了片段零数据单元的位置,去除零单元数据,并将非零单元数据组合在一起,作为有效数据。
步骤S708、应用程序对该数据帧进行解析,处理成视频图像,在显示装置上显示。
本发明在确认数据通道建立前,对数据帧零单元数据的特性,及前导字进行判断,在确认该数据帧为无效数据的可能性较大时,才对该数据帧进行下一步处理,提高无效数据处理的准确性。
本发明在进行上述判断之前,还需确认该数据帧是完整的数据单元,以便于上述判断。
参阅图8,示出本发明第四实施例的无效数据处理方法,具体步骤如下所述。
步骤S801、无效数据处理系统从接收端的缓存中获取数据帧。无效数据处理系统从视频通信接收端的缓存中获取一数据帧,该数据帧为二进制数据流。
步骤S802、判断该数据帧是否为完整的数据单元,如否,继续获取后续的数据帧,拼合成完整的数据单元;如是,转到步骤S803。
在3G-324M协议中,在发送时对二进制数据流进行有效的分割,分割成多个数据包,对各数据包进行编号,并在分割处都进行标识。如该数据帧前端和后端数据都分割标识,可确认该数据帧。
步骤S803、判断该数据帧是否含有大于3的零单元数据,如是,则确认该数据帧为无效数据的可能性较大,转到步骤S804;如否,则确认该数据帧为无效数据的可能性很大,转到步骤S809。
步骤S804、判断数据帧的前导字节是否为特定标志位,如是,表明该数据帧是无效数据的可能性很小,转到步骤S809;如否,表示该数据为无效的数据的可能性较大,转到步骤S805。特定标志位是指的3G-324M协议中特定的标志位,如数据帧大小标识位,数据帧分割位等。
步骤S805、判断是否建立数据通道,如否,发送端与接收端交互的数据为信令,该类数据不会对视频图像质量有影响,不需对该类数据进行无效数据处理,直接转到步骤S809;如是,发送方与接收方交互的数据为视频数据和音频数据,转到步骤S806。
步骤S806、判断该数据帧是否完整,如否,将该数据帧置回缓存,转到步骤S801;如是,转到步骤S807。判断该数据帧是否完整的依据是查看该数据帧是否包含数据帧头和数据帧尾,如包含,确认该数据完整;如不包含,则确认该数据帧不完整。
步骤S807、进一步判断该数据帧是否为无效数据,如不是无效数据,转到步骤S809;如是,转到步骤S808。判断该数据帧是否为无效数据的依据是遍历该数据帧,如该数据帧间隔性的出现片段零单元,确定该数据帧为无效数据,否则为有效数据。
步骤S808、对非零单元数据位置进行标识,去除零单元数据,拼合非零单元数据,作为有效数据。数据帧为无效数据,表明该数据帧包含有无法解析处理的片段零单元数据,本发明确定非零数据的起始位置和结束位置,对上述起始位置和结束位置进行编号,这样就确定了片段零数据单元的位置,去除零单元数据,并将非零单元数据组合在一起,作为有效数据。
步骤S809、应用程序对该数据帧进行解析,处理成视频图像,在显示装置上显示。
基于上述在视频通信中处理无效数据的方法,本发明还提供一种在视频通信中处理无效数据的系统,该系统能够对视频通信中的无效数据进行处理,以保证视频通信质量。
参阅图9,示出本发明处理无效数据的系统,包括可视电话应用层91、H.234协议层92、H.245协议层93、H.223协议层94、设备驱动适配层95、及3G网络设备层96,其中,H.223协议层94进一步包括适配层941层和复用/解复用层942。本发明在复用/解复用层942与设备驱动适配层95之间加设无效数据过滤层97。
参阅图10,示出本发明第一实施例无效数据过滤层97结构,无效数据过滤层97包括数据帧获取模块971、数据帧完整性判断模块972、无效数据判断模块973、及无效数据整理模块974。
数据帧获取模块971在接收端的缓存中获取数据帧,将该数据帧传送到数据帧完整性判断模块972。
数据帧完整性判断模块972判断该数据帧是否完整,如否,将该数据帧置回缓存;如是,启动无效数据判断模块973。
无效数据判断模块973判断该数据帧是否为无效数据,如是,启动无效数据整理模块974。
无效数据整理模块974对该数据帧内非零数据位置进行标识,依据上述标识去除零单元数据,拼合非零数据。
参阅图11,示出本发明第二实施例无效数据过滤层97结构,无效数据过滤层97包括数据帧获取模块971、数据帧完整性判断模块972、无效数据判断模块973、无效数据整理模块974、数据通道确认模块975、标志位确定模块976、零单元数据确认模块977、及数据单元判断模块978。
数据单元判断模块978判断该数据帧是否为完整的数据单元,如否,继续获取后续的数据帧,拼合成完整的数据单元,启动零单元数据确认模块977。
零单元数据确认模块977确认该数据帧含有大于3的零单元数据,启动标志位确定模块976。
标志位确定模块976确定该数据帧的前导字节不是特定标志位,启动数据通道确认模块975。
数据通道确认模块975确认已建立数据通道,启动数据帧完整性判断模块972。
数据帧获取模块971、数据帧完整性判断模块972、无效数据判断模块973、及无效数据整理模块974在该实施例中的作用与功能同图10所示实施例相同,不再赘述。
以上对本发明所提供的一种在视频通信中处理无效数据的方法及系统,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。