CN111030985A - 一种数据包发送方法和装置 - Google Patents
一种数据包发送方法和装置 Download PDFInfo
- Publication number
- CN111030985A CN111030985A CN201911040462.5A CN201911040462A CN111030985A CN 111030985 A CN111030985 A CN 111030985A CN 201911040462 A CN201911040462 A CN 201911040462A CN 111030985 A CN111030985 A CN 111030985A
- Authority
- CN
- China
- Prior art keywords
- length value
- video
- video data
- data packets
- data packet
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0006—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
- H04L1/0007—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format by modifying the frame length
- H04L1/0008—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format by modifying the frame length by supplementing frame payload, e.g. with padding bits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0033—Systems modifying transmission characteristics according to link quality, e.g. power backoff arrangements specific to the transmitter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Quality & Reliability (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供了一种数据包发送方法和装置,方法应用于视联网中,包括:获取i个视联网视频数据包的第一长度值,其中,i为大于2的正整数;在所述第一长度值小于预设长度值、第二长度值小于所述预设长度值且第三长度值大于所述预设长度值的情况下,则根据所述预设长度值及所述第二长度值,确定第四长度值;根据所述第四长度值将第i个数据包进行拆分,获得拆分后的与所述第四长度值对应的拆分视频数据包;将前i‑1个第一长度值对应的所述视联网视频数据包和所述拆分视频数据包按照预设规则填充到待发送的数据帧结构,以供视联网终端设备进行发送,提升视联网传输视频数据效率,同时也提升带宽的利用率。
Description
技术领域
本发明涉及视联网技术领域,特别是涉及一种数据包发送方法和装置。
背景技术
随着网络科技的快速发展,视频会议、视频教学等双向通信在用户的生活、工作、学习等方面广泛普及。
目前在视联网中传输小分辨率视频数据包时,例如传输的数据包的视频格式为D1视频格式类型,其中,D1视频格式类型为数字电视系统显示格式的一种,分辨率是720*576;D1数据包在每次传输过程中,为了避免带宽资源浪费,将多个小分辨率视频数据包进行合并,放在一个数据帧中进行发送,但是,有时候并不能将数据帧全部占满,这种情况下仍然会出现很多空字节,从而造成带宽资源的浪费。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种数据包发送方法和装置。
第一个方面,本发明实施例提供一种数据包发送方法,所述方法应用于视联网中,包括:
获取i个视联网视频数据包的第一长度值,其中,i为大于2的正整数;
在所述第一长度值小于预设长度值、第二长度值小于所述预设长度值且第三长度值大于所述预设长度值的情况下,则根据所述预设长度值及所述第二长度值,确定第四长度值;
其中:所述第二长度值根据前i-1个所述视联网视频数据包对应的第一长度值确定;所述第三长度值根据前i个所述视联网视频数据包对应的第一长度值确定;
根据所述第四长度值将第i个数据包进行拆分,获得拆分后的与所述第四长度值对应的拆分视频数据包;
将前i-1个第一长度值对应的所述视联网视频数据包和所述拆分视频数据包按照预设规则填充到待发送的数据帧结构,以供视联网终端设备进行发送。
可选地,所述根据所述第四长度值将第i个数据包进行拆分,获得拆分后的与所述第四长度值对应的拆分视频数据包,包括:
根据所述第四长度值对第i个数据包进行拆分,生成与所述第四长度值相对应的所述拆分视频数据包;
为所述拆分视频数据包设置对应的帧编号和是否完整的标识信息。
可选地,所述将前i-1个第一长度值对应的所述视联网视频数据包和所述拆分视频数据包按照预设规则填充到待发送的数据帧结构,以供视联网终端设备进行发送,具体包括:
按照预设规则,将前i-1个填充数据包和所述拆分视频数据包填充到待发送的数据帧结构,以供视联网终端设备进行发送;
其中,所述预设规则包括视频格式类型、前i-1个填充数据包和所述拆分视频数据包,其中,所述填充数据包或拆分视频数据包至少包括起始位、是否完整标识位、帧编号、视频数据、结束位、保留位;其中,所述填充数据包为与第一长度值对应的视联网视频数据包。
可选地,所述获取i个视联网视频数据包的第一长度值,包括:
获取i个视联网视频数据包;
根据预设的视频格式类型分别对i个所述视联网视频数据包进行处理,分别得到所述i个所述视联网视频数据包对应的填充数据包;
采用len函数分别计算i个所述填充数据包的第一长度值。
可选地,所述第二长度值根据前i-1个所述视联网视频数据包对应的第一长度值确定;所述第三长度值根据前i个所述视联网视频数据包对应的第一长度值确定,包括:
对前i-1个所述视联网视频数据包的第一长度值求和,获得第二长度值;
将所述第二长度值与第i个所述视联网视频数据包的第一长度值求和,获得第三长度值。
可选地,所述根据所述预设长度值及所述第二长度值,确定第四长度值,包括:
将所述预设长度值与所述第二长度值的差值,确定为第四长度值。
第二个方面,本发明实施例提供一种数据包发送装置,所述装置应用于视联网中,包括:
获取模块,用于获取i个视联网视频数据包的第一长度值,其中,i为大于2的正整数;
确定模块,用于在所述第一长度值小于预设长度值、第二长度值小于所述预设长度值且第三长度值大于所述预设长度值的情况下,则根据所述预设长度值及所述第二长度值,确定第四长度值;
其中:所述第二长度值根据前i-1个所述视联网视频数据包对应的第一长度值确定;所述第三长度值根据前i个所述视联网视频数据包对应的第一长度值确定;
拆分模块,用于根据所述第四长度值将第i个数据包进行拆分,获得拆分后的与所述第四长度值对应的拆分视频数据包;
填充模块,用于将前i-1个第一长度值对应的所述视联网视频数据包和所述拆分视频数据包按照预设规则填充到待发送的数据帧结构,以供视联网终端设备进行发送。
可选地,所述拆分模块用于:
根据所述第四长度值对第i个数据包进行拆分,生成与所述第四长度值相对应的所述拆分视频数据包;
为所述拆分视频数据包设置对应的帧编号和是否完整的标识信息。
可选地,所述填充模块用于:
按照预设规则,将前i-1个填充数据包和所述拆分视频数据包填充到待发送的数据帧结构,以供视联网终端设备进行发送;
其中,所述预设规则包括视频格式类型、前i-1个填充数据包和所述拆分视频数据包,其中,所述填充数据包或拆分视频数据包至少包括起始位、是否完整标识位、帧编号、视频数据、结束位、保留位;其中,所述填充数据包为与第一长度值对应的视联网视频数据包。
可选地,所述获取模块用于:
获取i个视联网视频数据包;
根据预设的视频格式类型分别对i个所述视联网视频数据包进行处理,分别得到所述i个所述视联网视频数据包对应的填充数据包;
采用len函数分别计算i个所述填充数据包的第一长度值。
可选地,所述确定模块用于:
对前i-1个所述视联网视频数据包的第一长度值求和,获得第二长度值;
将所述第二长度值与第i个所述视联网视频数据包的第一长度值求和,获得第三长度值。
可选地,所述确定模块还用于:
将所述预设长度值与所述第二长度值的差值,确定为第四长度值。
第三个方面,本发明实施例提供一种终端设备,包括:至少一个处理器和存储器;
所述存储器存储计算机程序;所述至少一个处理器执行所述存储器存储的计算机程序,以实现第一个方面提供的方法。
第四个方面,本发明实施例提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,所述计算机程序被执行时实现第一个方面提供的方法。
本发明实施例包括以下优点:
本发明实施例应用视联网的特性,获取i个视联网视频数据包的第一长度值,其中,i为大于2的正整数;在第一长度值小于预设长度值、前i-1个视频数据包的长度之和小于预设长度值且前i个视频数据包的长度之和大于预设长度值的情况下,则计算出来预设长度值的数据帧空闲的字节长度,根据该字节长度将第i个数据包拆分,将与空闲的字节长度的视频数据包和前i-1个完整的视频数据包按照预设规则填充到待发送的数据帧结构中,以供视联网终端设备进行发送。采用本发明实施例,在小分辨率的视联网视频数据包发送的过程中,可以将预设长度的带宽全部占满,提升了视联网传输视频数据效率,同时也提升带宽的利用率。
附图说明
图1是本发明的一种数据包发送方法实施例的步骤流程图;
图2是本发明的视联网视频数据帧的结构示意图;
图3是本发明的另一种数据包发送方法实施例的步骤流程图;
图4是本发明的一种数据包发送装置实施例的结构框图;
图5是本发明的一种终端设备的结构示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
视联网是网络发展的重要里程碑,是一个实时网络,能够实现高清视频实时传输,将众多互联网应用推向高清视频化,高清面对面。
视联网采用实时高清视频交换技术,可以在一个网络平台上将所需的服务,如高清视频会议、视频监控、智能化监控分析、应急指挥、数字广播电视、延时电视、网络教学、现场直播、VOD点播、电视邮件、个性录制(PVR)、内网(自办)频道、智能化视频播控、信息发布等数十种视频、语音、图片、文字、通讯、数据等服务全部整合在一个系统平台,通过电视或电脑实现高清品质视频播放。
基于视联网的上述特性,提出了本发明实施例的核心构思之一,遵循视联网的协议,视联网终端设备获取i个视联网视频数据包的第一长度值,其中,i为大于2的正整数;在所述第一长度值小于预设长度值、第二长度值小于所述预设长度值且第三长度值大于所述预设长度值的情况下,则根据所述预设长度值及所述第二长度值,确定第四长度值;其中:所述第二长度值根据前i-1个所述视联网视频数据包对应的第一长度值确定;所述第三长度值根据前i个所述视联网视频数据包对应的第一长度值确定;根据所述第四长度值将第i个数据包进行拆分,获得拆分后的与所述第四长度值对应的拆分视频数据包;将前i-1个第一长度值对应的所述视联网视频数据包和所述拆分视频数据包按照预设规则填充到待发送的数据帧结构,以供视联网终端设备进行发送,提升视联网传输视频数据效率,同时也提升带宽的利用率。
本发明一实施例提供一种数据包发送方法,用于将多个小分辨率的视联网视频数据包按照预设的规则进行封装后,填充满数据帧后进行发送。本实施例的执行主体为数据包发送装置,设置在预先加入到视联网的终端设备上。
参照图1,示出了本发明的一种数据包发送方法实施例的步骤流程图,该方法可以应用于视联网中,具体可以包括如下步骤:
S101、获取i个视联网视频数据包的第一长度值,其中,i为大于2的正整数;
基于视联网通信协议,视联网终端设备之间进行视频数据包传输,视联网终端设备从传输的视频流中获取i个视联网视频数据包,i为大于2的正整数,其中,获取的i个视联网视频数据包为D1视频格式的数据包。
在接收到i个视联网视频数据包后,分别计算每个视联网数据包的第一长度值,具体为计算各个视联网视频数据数据包的字节长度。
需要说明的是,i个视联网视频数据包的长度可以相同,也可以不同,在本发明实施例中不做具体限定。
S102、在所述第一长度值小于预设长度值、第二长度值小于所述预设长度值且第三长度值大于所述预设长度值的情况下,则根据所述预设长度值及所述第二长度值,确定第四长度值;
其中:所述第二长度值根据前i-1个所述视联网视频数据包对应的第一长度值确定;所述第三长度值根据前i个所述视联网视频数据包对应的第一长度值确定;
具体地,对计算得到的i个视联网视频数据包的第一长度值进行判断,若第一长度值小于预设长度值,则根据前i-1个视联网视频数据包对应的第一长度值确定第二长度值,也就是计算前i-1个视联网视频数据包对应的第一长度值的和,即前i-1个视联网视频数据包字节长度总和;
再根据前i个视联网视频数据包对应的第一长度值确定第三长度值,即在第二长度值的基础上,将第二长度值和第i个视联网视频数据包的第一长度值求和,作为第三长度值。
将第二长度值、第三长度值分别和预设长度值进行比较,若第二长度值小于所述预设长度值且第三长度值大于所述预设长度值,则说明数据帧中可以完整的放入前i-1个视频数据包,第i个视频数据包则无法全部放入,则根据预设长度值和第二长度值,确定第四长度值,即在数据帧中放入前i-1个视频数据包后,还空闲多少个字节,第i个视频数据包也就可以放入多少个字节。
S103、根据所述第四长度值将第i个数据包进行拆分,获得拆分后的与所述第四长度值对应的拆分视频数据包;
视联网终端设备根据第四长度值对第i个数据包进行拆分,例如,可以将第i个数据包拆分成两个部分,获取与第四长度值对应的拆分视频数据包,剩下的数据包可以在后续的数据帧中进行发送。
S104、将前i-1个第一长度值对应的所述视联网视频数据包和所述拆分视频数据包按照预设规则填充到待发送的数据帧结构,以供视联网终端设备进行发送。
其中,预设长度值可以根据带宽进行自行设定,例如可以是1024字节。
视联网终端设备将与第一长度值对应的前i-1个视频数据包和拆分视频数据包按照预设规则填充到待发送的数据帧结构中,以供视联网终端设备进行发送。
示例性地,若视联网终端设备获取3个视联网视频数据包,分别计算这3个视联网视频数据包的字节长度例如400字节,若每个视联网视频数据包的字节数都小于预设长度值,例如预设长度值为1024字节,则计算前2个视联网视频数据包的字节长度之和,即第二长度值,若第二长度值小于1024字节,则继续计算第二长度值和第3个视联网视频数据包的字节之和,即第三长度值,若第三长度值大于1024字节,则说明可以将前2个视联网视频数据包完整的填充到数据帧结构中,这时,数据帧结构还有1024-400*2=224字节的空闲字节,需要将第3个视联网视频数据包的部分数据填充到数据帧中,从第3个视联网视频数据包中拆分出224字节的数据包,和前两个视频数据包按照预设规则填充到待发送的数据帧结构中,以供视联网终端设备进行发送。
本发明实施例提供的数据包发送方法,通过视联网终端设备获取i个视联网视频数据包的第一长度值,其中,i为大于2的正整数;在所述第一长度值小于预设长度值、第二长度值小于所述预设长度值且第三长度值大于所述预设长度值的情况下,则根据所述预设长度值及所述第二长度值,确定第四长度值;根据所述第四长度值将第i个数据包进行拆分,获得拆分后的与所述第四长度值对应的拆分视频数据包;将前i-1个第一长度值对应的所述视联网视频数据包和所述拆分视频数据包按照预设规则填充到待发送的数据帧结构,以供视联网终端设备进行发送,采用本发明提供的方案,在小分辨率的视联网视频数据包发送的过程中,可以将预设长度的带宽全部占满,提升了视联网传输视频数据效率,同时也提升带宽的利用率。
本发明又一实施例对上述实施例提供的方法做进一步补充说明。
在上述实施例的基础上,可选地,所述根据所述第四长度值将第i个数据包进行拆分,获得拆分后的与所述第四长度值对应的拆分视频数据包,包括:
根据所述第四长度值对第i个数据包进行拆分,生成与所述第四长度值相对应的所述拆分视频数据包;
为所述拆分视频数据包设置对应的帧编号和是否完整的标识信息。
示例性地,在上面具体例子的基础上,将第3个视频数据包拆分出224字节的视频数据包,为拆分出的该视频数据包设置是否完整的标识信息,例如若是拆分的数据包,则标识信息即标识位设置为00,若是完整的数据包,则标识位设置为11,;
若标识为00时,则设置帧编号,例如,帧编号为0000-1111,最大可以是16,若大于16,则需要从0000开始。帧编号的设置可以根据用户的需要自行设定,在本发明实施例中不做具体限定。
例如为了在视联网接收终端可以区分拆分数据包是来自哪个数据包,则可以将属于同一个视联网视频数据包的多个拆分数据包的帧编号的第2位都设置为1。
可选地,所述将前i-1个第一长度值对应的所述视联网视频数据包和所述拆分视频数据包按照预设规则填充到待发送的数据帧结构,以供视联网终端设备进行发送,具体包括:
按照预设规则,将前i-1个填充数据包和所述拆分视频数据包填充到待发送的数据帧结构,以供视联网终端设备进行发送;
其中,所述预设规则包括视频格式类型、前i-1个填充数据包和所述拆分视频数据包,其中,所述填充数据包或拆分视频数据包至少包括起始位、是否完整标识位、帧编号、视频数据、结束位、保留位;其中,所述填充数据包为与第一长度值对应的视联网视频数据包。
具体地,视联网终端设备在获取到前i-1个第一长度值对应的填充数据包和拆分数据包后,可以按照如图2所示的数据帧结构进行填充,具体地,若是填充数据包,则视频数据就为完整的视频数据包,若是拆分数据包,则视频数据为与第四长度值对应的视频数据包,这样,就可以将数据帧完全填充满,没有空余的字节,根据填充完成的数据帧进行数据包发送,提升提高视联网传输视频数据效率,降低用户传输视联网视频数据带宽占有率,其中,图2中的视频单元N数据即为拆分后的视联网视频数据包,其他的视频单元为完整的视联网视频数据包。
可选地,所述获取i个视联网视频数据包的第一长度值,包括:
获取i个视联网视频数据包;
根据预设的视频格式类型分别对i个所述视联网视频数据包进行处理,分别得到所述i个所述视联网视频数据包对应的填充数据包;
采用len函数分别计算i个所述填充数据包的第一长度值。
具体地,视联网终端设备获取i个视联网视频数据包,为了在数据帧发送过程中,能够填充更多的视频数据包,则对获取的i个视联网视频数据包按照预设的视频格式类型进行处理,获得各个视联网视频数据包对应的填充数据包,例如预设的视频格式类型可以为H.264、H.265等,可以根据具体的情况设定不同的视频格式。
对得到的各个填充数据包,计算各个填充数据包的第一长度值,即各个填充数据包占据的字节数。将获得的视联网视频数据包进行压缩后,在一次的数据包传输过程中可以封装更多的视联网视频数据包,提高带宽利用率。
示例性地,视联网终端设备获取的视联网视频数据包为D1格式,对该格式的数据包进行处理,比如进行H.264视频格式的处理,处理后得到填充数据包,填充数据包的数据大小大约占300字节,但是一个传输视频流的数据包长度为1024字节,因此大概会浪费700多字节空间,本发明实施例将小分辨率视频数据包将数据帧结构全部填充完成后进行发送,提高的宽带利用率。
具体地,可采用len(string),其中参数string为填充数据包的string类型变量,返回值为字节长度long,即填充数据包的字节长度。函数执行成功时返回字符串的长度,发生错误时返回-1。
可选地,所述第二长度值根据前i-1个所述视联网视频数据包对应的第一长度值确定;所述第三长度值根据前i个所述视联网视频数据包对应的第一长度值确定,包括:
对前i-1个所述视联网视频数据包的第一长度值求和,获得第二长度值;
将所述第二长度值与第i个所述视联网视频数据包的第一长度值求和,获得第三长度值。
具体的,视联网终端设备将获取的前i-1个视频数据包的第一长度值即字节长度求和,即计算第一个视频数据包、第二个视频数据包到第i-1个视频数据包的字节长度的和,将得到的字节长度之和作为第二长度值;
在第二长度值的基础上增加第i个视频数据包的字节长度,得到的字节长度之和作为第三长度值。
可选地,所述根据所述预设长度值及所述第二长度值,确定第四长度值,包括:
将所述预设长度值与所述第二长度值的差值,确定为第四长度值。
具体地,视联网终端设备将预设长度值减去第二长度值,得到的结果即为第四长度值,其中,预设长度值为传输网络的带宽最大承载的字节长度。
图3是本发明的另一种数据包发送方法实施例的步骤流程图,如图3所示,具体地:
S301、初始化设置:Num=0000,Cpte=11;在获取i个数据包后,首先进行初始化设置,例如设置是否完整标识位Cpte为11,设置帧编号Num为0000;
S302、判断Num是否大于16;若是,则执行S303;若否,则执行S304;
S303、Num赋值为0000;
S304、判断Cpte是否为11;若是,则执行S305;若否,则执行S312;
S305、计算视频单元(视联网视频数据包)的长度Len即第一长度值,并赋值Sum_Len+=Len;
S306、Sum_Len<1024(预设长度值)?若是,则执行S307;若否,则执行S309;
S307、填写字段数据(起始位:00,是否完整标识位:11)
S308、填入结束字节(结束位:11)
S309、填写字段数据(起始位:00,是否完整标识位:00),帧编号:Num=Num+1;
S310、Temp_Len=1024–Len;
S311、填入结束字节(结束位:11)
S312、填写字段数据(起始位:00,是否完整位:00,帧编码:Num);
将第i个视频数据包拆分后,将前一部分在当前数据帧结构中传输,剩下的数据包在下一个数据帧结构中进行传输,并执行该步骤。
S313、填入结束字节(结束位:11).
其中,是否完整标识位:11,表示该视频数据包是完整的;
是否完整标识位:00,表示该视频数据包是拆分的;
本发明实施例提供的数据包发送方法,通过视联网终端设备获取i个视联网视频数据包的第一长度值,其中,i为大于2的正整数;在所述第一长度值小于预设长度值、第二长度值小于所述预设长度值且第三长度值大于所述预设长度值的情况下,则根据所述预设长度值及所述第二长度值,确定第四长度值;根据所述第四长度值将第i个数据包进行拆分,获得拆分后的与所述第四长度值对应的拆分视频数据包;将前i-1个第一长度值对应的所述视联网视频数据包和所述拆分视频数据包按照预设规则填充到待发送的数据帧结构,以供视联网终端设备进行发送,采用本发明提供的方案,在小分辨率的视联网视频数据包发送的过程中,可以将预设长度的带宽全部占满,提升了视联网传输视频数据效率,同时也提升带宽的利用率。
本发明另一实施例提供一种数据包发送装置,用于执行上述实施例提供的方法。
参照图4,示出了本发明的一种数据包发送装置实施例的结构框图,该装置可以应用于视联网中,具体可以包括如下模块:获取模块401、确定模块402、拆分模块403和填充模块404,其中:
获取模块401用于获取i个视联网视频数据包的第一长度值,其中,i为大于2的正整数;
确定模块402用于在所述第一长度值小于预设长度值、第二长度值小于所述预设长度值且第三长度值大于所述预设长度值的情况下,则根据所述预设长度值及所述第二长度值,确定第四长度值;
其中:所述第二长度值根据前i-1个所述视联网视频数据包对应的第一长度值确定;所述第三长度值根据前i个所述视联网视频数据包对应的第一长度值确定;
拆分模块403用于根据所述第四长度值将第i个数据包进行拆分,获得拆分后的与所述第四长度值对应的拆分视频数据包;
填充模块404用于将前i-1个第一长度值对应的所述视联网视频数据包和所述拆分视频数据包按照预设规则填充到待发送的数据帧结构,以供视联网终端设备进行发送。
本发明实施例提供的数据包发送装置,通过视联网终端设备获取i个视联网视频数据包的第一长度值,其中,i为大于2的正整数;在所述第一长度值小于预设长度值、第二长度值小于所述预设长度值且第三长度值大于所述预设长度值的情况下,则根据所述预设长度值及所述第二长度值,确定第四长度值;根据所述第四长度值将第i个数据包进行拆分,获得拆分后的与所述第四长度值对应的拆分视频数据包;将前i-1个第一长度值对应的所述视联网视频数据包和所述拆分视频数据包按照预设规则填充到待发送的数据帧结构,以供视联网终端设备进行发送,采用本发明提供的方案,在小分辨率的视联网视频数据包发送的过程中,可以将预设长度的带宽全部占满,提升了视联网传输视频数据效率,同时也提升带宽的利用率。
本发明又一实施例对上述实施例提供的装置做进一步补充说明。
在上述实施例的基础上,可选地,所述拆分模块用于:
根据所述第四长度值对第i个数据包进行拆分,生成与所述第四长度值相对应的所述拆分视频数据包;
为所述拆分视频数据包设置对应的帧编号和是否完整的标识信息。
可选地,所述填充模块用于:
按照预设规则,将前i-1个填充数据包和所述拆分视频数据包填充到待发送的数据帧结构,以供视联网终端设备进行发送;
其中,所述预设规则包括视频格式类型、前i-1个填充数据包和所述拆分视频数据包,其中,所述填充数据包或拆分视频数据包至少包括起始位、是否完整标识位、帧编号、视频数据、结束位、保留位;其中,所述填充数据包为与第一长度值对应的视联网视频数据包。
可选地,所述获取模块用于:
获取i个视联网视频数据包;
根据预设的视频格式类型分别对i个所述视联网视频数据包进行处理,分别得到所述i个所述视联网视频数据包对应的填充数据包;
采用len函数分别计算i个所述填充数据包的第一长度值。
可选地,所述确定模块用于:
对前i-1个所述视联网视频数据包的第一长度值求和,获得第二长度值;
将所述第二长度值与第i个所述视联网视频数据包的第一长度值求和,获得第三长度值。
可选地,所述确定模块还用于:
将所述预设长度值与所述第二长度值的差值,确定为第四长度值。
需要说明的是,本实施例中各可实施的方式可以单独实施,也可以在不冲突的情况下以任意组合方式结合实施本申请不做限定。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例提供的数据包发送装置,通过视联网终端设备获取i个视联网视频数据包的第一长度值,其中,i为大于2的正整数;在所述第一长度值小于预设长度值、第二长度值小于所述预设长度值且第三长度值大于所述预设长度值的情况下,则根据所述预设长度值及所述第二长度值,确定第四长度值;根据所述第四长度值将第i个数据包进行拆分,获得拆分后的与所述第四长度值对应的拆分视频数据包;将前i-1个第一长度值对应的所述视联网视频数据包和所述拆分视频数据包按照预设规则填充到待发送的数据帧结构,以供视联网终端设备进行发送,采用本发明提供的方案,在小分辨率的视联网视频数据包发送的过程中,可以将预设长度的带宽全部占满,提升了视联网传输视频数据效率,同时也提升带宽的利用率。
本发明再一实施例提供一种终端设备,用于执行上述实施例提供的方法。
图5是本发明的一种终端设备的结构示意图,如图5所示,该终端设备包括:至少一个处理器41和存储器42;
所述存储器存储计算机程序;所述至少一个处理器执行所述存储器存储的计算机程序,以实现上述实施例提供的方法。
其中,本发明实施例中的终端设备为视联网终端设备。
本实施例提供的终端设备,通过视联网终端设备获取i个视联网视频数据包的第一长度值,其中,i为大于2的正整数;在所述第一长度值小于预设长度值、第二长度值小于所述预设长度值且第三长度值大于所述预设长度值的情况下,则根据所述预设长度值及所述第二长度值,确定第四长度值;根据所述第四长度值将第i个数据包进行拆分,获得拆分后的与所述第四长度值对应的拆分视频数据包;将前i-1个第一长度值对应的所述视联网视频数据包和所述拆分视频数据包按照预设规则填充到待发送的数据帧结构,以供视联网终端设备进行发送,采用本发明提供的方案,在小分辨率的视联网视频数据包发送的过程中,可以将预设长度的带宽全部占满,提升了视联网传输视频数据效率,同时也提升带宽的利用率。
本申请又一实施例提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,所述计算机程序被执行时实现上述任一实施例提供的方法。
根据本实施例的计算机可读存储介质,通过视联网终端设备获取i个视联网视频数据包的第一长度值,其中,i为大于2的正整数;在所述第一长度值小于预设长度值、第二长度值小于所述预设长度值且第三长度值大于所述预设长度值的情况下,则根据所述预设长度值及所述第二长度值,确定第四长度值;根据所述第四长度值将第i个数据包进行拆分,获得拆分后的与所述第四长度值对应的拆分视频数据包;将前i-1个第一长度值对应的所述视联网视频数据包和所述拆分视频数据包按照预设规则填充到待发送的数据帧结构,以供视联网终端设备进行发送,采用本发明提供的方案,在小分辨率的视联网视频数据包发送的过程中,可以将预设长度的带宽全部占满,提升了视联网传输视频数据效率,同时也提升带宽的利用率。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种数据包发送方法和一种数据包发送装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种数据包发送方法,其特征在于,所述方法应用于视联网中,包括:
获取i个视联网视频数据包的第一长度值,其中,i为大于2的正整数;
在所述第一长度值小于预设长度值、第二长度值小于所述预设长度值且第三长度值大于所述预设长度值的情况下,则根据所述预设长度值及所述第二长度值,确定第四长度值;其中:所述第二长度值根据前i-1个所述视联网视频数据包对应的第一长度值确定;所述第三长度值根据前i个所述视联网视频数据包对应的第一长度值确定;
根据所述第四长度值将第i个数据包进行拆分,获得拆分后的与所述第四长度值对应的拆分视频数据包;
将前i-1个第一长度值对应的所述视联网视频数据包和所述拆分视频数据包按照预设规则填充到待发送的数据帧结构,以供视联网终端设备进行发送。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第四长度值将第i个数据包进行拆分,获得拆分后的与所述第四长度值对应的拆分视频数据包,包括:
根据所述第四长度值对第i个数据包进行拆分,生成与所述第四长度值相对应的所述拆分视频数据包;
为所述拆分视频数据包设置对应的帧编号和是否完整的标识信息。
3.根据权利要求2所述的方法,其特征在于,所述将前i-1个第一长度值对应的所述视联网视频数据包和所述拆分视频数据包按照预设规则填充到待发送的数据帧结构,以供视联网终端设备进行发送,具体包括:
按照预设规则,将前i-1个填充数据包和所述拆分视频数据包填充到待发送的数据帧结构,以供视联网终端设备进行发送;
其中,所述预设规则包括视频格式类型、前i-1个填充数据包和所述拆分视频数据包,其中,所述填充数据包或拆分视频数据包至少包括起始位、是否完整标识位、帧编号、视频数据、结束位、保留位;其中,所述填充数据包为与第一长度值对应的视联网视频数据包。
4.根据权利要求1所述的方法,其特征在于,所述获取i个视联网视频数据包的第一长度值,包括:
获取i个视联网视频数据包;
根据预设的视频格式类型分别对i个所述视联网视频数据包进行处理,分别得到所述i个所述视联网视频数据包对应的填充数据包;
采用len函数分别计算i个所述填充数据包的第一长度值。
5.根据权利要求1所述的方法,其特征在于,所述第二长度值根据前i-1个所述视联网视频数据包对应的第一长度值确定;所述第三长度值根据前i个所述视联网视频数据包对应的第一长度值确定,包括:
对前i-1个所述视联网视频数据包的第一长度值求和,获得第二长度值;
将所述第二长度值与第i个所述视联网视频数据包的第一长度值求和,获得第三长度值。
6.根据权利要求1所述的方法,其特征在于,所述根据所述预设长度值及所述第二长度值,确定第四长度值,包括:
将所述预设长度值与所述第二长度值的差值,确定为第四长度值。
7.一种数据包发送装置,其特征在于,所述装置应用于视联网中,包括:
获取模块,用于获取i个视联网视频数据包的第一长度值,其中,i为大于2的正整数;
确定模块,用于在所述第一长度值小于预设长度值、第二长度值小于所述预设长度值且第三长度值大于所述预设长度值的情况下,则根据所述预设长度值及所述第二长度值,确定第四长度值;
其中:所述第二长度值根据前i-1个所述视联网视频数据包对应的第一长度值确定;所述第三长度值根据前i个所述视联网视频数据包对应的第一长度值确定;
拆分模块,用于根据所述第四长度值将第i个数据包进行拆分,获得拆分后的与所述第四长度值对应的拆分视频数据包;
填充模块,用于将前i-1个第一长度值对应的所述视联网视频数据包和所述拆分视频数据包按照预设规则填充到待发送的数据帧结构,以供视联网终端设备进行发送。
8.根据权利要求7所述的装置,其特征在于,所述拆分模块用于:
根据所述第四长度值对第i个数据包进行拆分,生成与所述第四长度值相对应的所述拆分视频数据包;
为所述拆分视频数据包设置对应的帧编号和是否完整的标识信息。
9.一种终端设备,其特征在于,包括:至少一个处理器和存储器;
所述存储器存储计算机程序;所述至少一个处理器执行所述存储器存储的计算机程序,以实现权利要求1-6中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质中存储有计算机程序,所述计算机程序被执行时实现权利要求1-6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911040462.5A CN111030985A (zh) | 2019-10-29 | 2019-10-29 | 一种数据包发送方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911040462.5A CN111030985A (zh) | 2019-10-29 | 2019-10-29 | 一种数据包发送方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111030985A true CN111030985A (zh) | 2020-04-17 |
Family
ID=70204747
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911040462.5A Pending CN111030985A (zh) | 2019-10-29 | 2019-10-29 | 一种数据包发送方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111030985A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114390004A (zh) * | 2022-03-24 | 2022-04-22 | 成都数联云算科技有限公司 | 一种报文处理方法及系统及装置及介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0871309A2 (en) * | 1997-04-07 | 1998-10-14 | Kabushiki Kaisha Toshiba | Router device and frame transfer method using datalink layer frame switching |
KR20080041982A (ko) * | 2006-11-08 | 2008-05-14 | 한국전자통신연구원 | Sip 기반 통신망을 이용한 멀티미디어 스트리밍 서비스제공 방법 |
CN103595660A (zh) * | 2013-11-04 | 2014-02-19 | 上海数字电视国家工程研究中心有限公司 | Ip数据包的封装方法和ip数据包的包头压缩方法 |
CN106453159A (zh) * | 2015-08-13 | 2017-02-22 | 徐川 | 一种用于交换机数据帧切分与重组装置的设计 |
CN107104911A (zh) * | 2017-04-06 | 2017-08-29 | 清华大学 | Udp数据包的分割方法和发送方法 |
CN110087128A (zh) * | 2019-04-30 | 2019-08-02 | 广州虎牙信息科技有限公司 | 直播互动方法、直播互动装置及直播设备 |
-
2019
- 2019-10-29 CN CN201911040462.5A patent/CN111030985A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0871309A2 (en) * | 1997-04-07 | 1998-10-14 | Kabushiki Kaisha Toshiba | Router device and frame transfer method using datalink layer frame switching |
KR20080041982A (ko) * | 2006-11-08 | 2008-05-14 | 한국전자통신연구원 | Sip 기반 통신망을 이용한 멀티미디어 스트리밍 서비스제공 방법 |
CN103595660A (zh) * | 2013-11-04 | 2014-02-19 | 上海数字电视国家工程研究中心有限公司 | Ip数据包的封装方法和ip数据包的包头压缩方法 |
CN106453159A (zh) * | 2015-08-13 | 2017-02-22 | 徐川 | 一种用于交换机数据帧切分与重组装置的设计 |
CN107104911A (zh) * | 2017-04-06 | 2017-08-29 | 清华大学 | Udp数据包的分割方法和发送方法 |
CN110087128A (zh) * | 2019-04-30 | 2019-08-02 | 广州虎牙信息科技有限公司 | 直播互动方法、直播互动装置及直播设备 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114390004A (zh) * | 2022-03-24 | 2022-04-22 | 成都数联云算科技有限公司 | 一种报文处理方法及系统及装置及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2135407B1 (en) | Method of transmitting data in a communication system | |
JP6981257B2 (ja) | 情報処理装置および情報処理方法 | |
CN104219229B (zh) | 虚拟桌面数据的传输方法和装置 | |
CN103650431B (zh) | 视频数据传输方法及装置 | |
CN104618798A (zh) | 面向互联网视频直播的播放时刻控制方法及装置 | |
RU2531571C2 (ru) | Система видеоконтроля и ее способ прямого исправления ошибок (fec) | |
US20090154448A1 (en) | Terminal equipment of communication system and method thereof | |
CN111741248A (zh) | 一种数据传输方法、装置、终端设备和存储介质 | |
CN111225254A (zh) | 一种视频传输方法、装置、终端设备及存储介质 | |
US6928087B2 (en) | Method and apparatus for automatic cross-media selection and scaling | |
CN111617466A (zh) | 编码格式的确定方法、装置及云游戏的实现方法 | |
CN111030985A (zh) | 一种数据包发送方法和装置 | |
CN112866390B (zh) | 一种数据传输方法、装置、终端设备和存储介质 | |
JP5135147B2 (ja) | 動画ファイル送信サーバおよびその動作制御方法 | |
CN111970541A (zh) | 一种数据传输方法、装置、终端设备和存储介质 | |
CN113905132B (zh) | 视频彩铃播放方法、装置和计算机可读存储介质 | |
CN106302377A (zh) | 媒体会话处理方法方法和相关设备及通信系统 | |
CN111385081B (zh) | 一种端到端的通信方法、装置、电子设备及介质 | |
CN110139129B (zh) | 图像传输方法及装置 | |
CN114866763A (zh) | 一种视频质量的评估方法、装置、终端设备和存储介质 | |
US10798141B2 (en) | Multiplexing data | |
CN112165655A (zh) | 基于视联网的数据传输方法、装置、设备及介质 | |
CN112243160A (zh) | 一种数据传输方法、装置、终端设备和存储介质 | |
CN112367271B (zh) | 基于ai的拥塞控制特征提取方法、装置、设备和介质 | |
CN112752070A (zh) | 一种数据传输方法、装置、终端设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200417 |