CN111953613B - 数据传输控制方法及装置 - Google Patents
数据传输控制方法及装置 Download PDFInfo
- Publication number
- CN111953613B CN111953613B CN202010705389.5A CN202010705389A CN111953613B CN 111953613 B CN111953613 B CN 111953613B CN 202010705389 A CN202010705389 A CN 202010705389A CN 111953613 B CN111953613 B CN 111953613B
- Authority
- CN
- China
- Prior art keywords
- target
- network bandwidth
- determining
- current
- module
- 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.)
- Active
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 108
- 238000000034 method Methods 0.000 title claims abstract description 31
- 238000010586 diagram Methods 0.000 description 9
- 230000002035 prolonged effect Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0896—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Multimedia (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本公开提供一种数据传输控制方法及装置,涉及数据传输技术领域,所述方法包括获取当前图像组中帧内编码图像帧划分得到的数据包的个数和所述数据包的字节数量;根据所述数据包的个数和所述数据包的字节数量确定目标网络带宽;获取当前网络带宽;根据所述数据包的字节数量和所述当前网络带宽确定所述数据包的目标发送间隔;在确定所述目标网络带宽小于或等于所述当前网络带宽时,根据所述目标发送间隔对每个所述数据包进行发送。本公开中是将帧内编码图像帧中的每个数据包按照目标发送间隔进行发送,以保证当前网络带宽能够支撑当前数据包的正常传输,从而避免造成网络拥塞,进而避免发生丢包现象,保证接收端能够正常显示数据。
Description
技术领域
本公开涉及数据传输技术领域,尤其涉及数据传输控制方法及装置。
背景技术
相关技术中,为了提高发送效率,通常采用UDP(User Datagram Protocol,用户数据报协议)来传输视频流。
但视频流有一个突发的特点,即视频流中的帧内编码图像帧的数据量相比预测编码图像帧的数据量会高出很多,且帧内编码图像帧中的所有数据的发送间隔为零,若当前网络带宽无法满足时,则会造成网络拥塞,从而导致帧内编码图像帧的部分数据发生丢包现象,无法保证接收端能够正常显示视频流。
发明内容
本公开实施例提供一种数据传输控制方法及装置,能够解决现有技术中导致帧内编码图像帧的部分数据发生丢包现象,无法保证接收端能够正常显示视频流的问题。所述技术方案如下:
根据本公开实施例的第一方面,提供一种数据传输控制方法,所述方法包括:
获取当前图像组中帧内编码图像帧划分得到的数据包的个数和所述数据包的字节数量;
根据所述数据包的个数和所述数据包的字节数量确定目标网络带宽;
获取当前网络带宽;
根据所述数据包的字节数量和所述当前网络带宽确定所述数据包的目标发送间隔;
在确定所述目标网络带宽小于或等于所述当前网络带宽时,根据所述目标发送间隔对每个所述数据包进行发送。
本公开实施例提供一种数据传输控制方法,根据数据包的个数和数据包的字节数量确定目标网络带宽,并根据数据包的字节数量和当前网络带宽确定数据包的目标发送间隔,在确定目标网络带宽小于或等于当前网络带宽时,根据目标发送间隔对每个数据包进行发送,以保证当前网络带宽能够支撑当前数据包的正常传输,从而避免造成网络拥塞,进而避免发生丢包现象,保证接收端能够正常显示数据。
在一个实施例中,还包括:
在确定所述目标网络带宽大于所述当前网络带宽时,根据预设策略从所述当前图像组中确定目标图像帧;所述预设策略为根据编码策略制定的策略;所述编码策略为所述当前图像组编码时采用的策略;
删除所述目标图像帧;
根据所述目标发送间隔对每个所述数据包进行发送。
本实施例中,在确定目标网络带宽大于当前网络带宽时,根据预设策略从当前图像组中确定待删除的目标图像帧,并将确定的目标图像帧删除,保证将帧内编码图像帧的传输时间延长,从而可以保证帧内编码图像帧的正常传输。
在一个实施例中,所述根据预设策略从所述当前图像组中获取目标图像帧包括:
根据所述当前网络带宽和所述当前图像组的帧数确定需要删除的预测编码图像帧的数量;
在确定所述预测编码图像帧的数量为一个时,将所述当前图像组中与所述帧内编码图像帧相邻的预测编码图像帧确定为所述目标图像帧;
在确定所述预测编码图像帧的数量大于一个、且小于或等于预设值时,根据预设间隔帧数从所述当前图像组中获取预测编码图像帧,将获取到的每个所述预测编码图像帧确定为所述目标图像帧;
在确定所述预测编码图像帧的数量大于所述预设值时,将所述当前图像组中的所有的预测编码图像帧确定为所述目标图像帧。
本实施例中,可根据需要删除的预测编码图像帧的数量确定对应的删除预测编码图像帧的方法,这样既可以保证最大程度的传输预测编码图像帧,又可以保证接收端能够正常显示。
在一个实施例中,所述根据所述数据包的个数和所述数据包的字节数量确定目标网络带宽包括:
根据公式B1=RN×Rs/Tmax确定所述目标网络带宽;
其中,Tmax=1/G,B1表示所述目标网络带宽,RN表示所述数据包的个数,Rs表示所述数据包的字节数量,Tmax表示当前所述帧内编码图像帧传输的最长时长,G表示所述当前图像组的帧数。
在一个实施例中,所述根据所述数据包的字节数量和所述当前网络带宽确定所述数据包的目标发送间隔包括:
根据公式确定所述数据包的目标发送间隔;
其中,T表示所述目标发送间隔,B表示所述当前网络带宽。
根据本公开实施例的第二方面,提供一种数据传输控制装置,所述装置包括:
第一获取模块,用于获取当前图像组中帧内编码图像帧划分得到的数据包的个数和所述数据包的字节数量;
第一确定模块,用于根据所述数据包的个数和所述数据包的字节数量确定目标网络带宽;
第二获取模块,用于获取当前网络带宽;
第二确定模块,用于根据所述数据包的字节数量和所述当前网络带宽确定所述数据包的目标发送间隔;
第一发送模块,用于在确定所述目标网络带宽小于或等于所述当前网络带宽时,根据所述目标发送间隔对每个所述数据包进行发送。
本公开实施例提供一种数据传输控制装置,根据数据包的个数和数据包的字节数量确定目标网络带宽,并根据数据包的字节数量和当前网络带宽确定数据包的目标发送间隔,在确定目标网络带宽小于或等于当前网络带宽时,根据目标发送间隔对每个数据包进行发送,以保证当前网络带宽能够支撑当前数据包的正常传输,从而避免造成网络拥塞,进而避免发生丢包现象,保证接收端能够正常显示数据。
在一个实施例中,还包括:
第三确定模块,用于在确定所述目标网络带宽大于所述当前网络带宽时,根据预设策略从所述当前图像组中确定目标图像帧;所述预设策略为根据编码策略制定的策略;所述编码策略为所述当前图像组编码时采用的策略;
删除模块,用于删除所述目标图像帧;
第二发送模块,用于根据所述目标发送间隔对每个所述数据包进行发送。
在一个实施例中,所述第三确定模块包括第一确定子模块、第二确定子模块、第三确定子模块和第四确定子模块;
所述第一确定子模块,用于根据所述当前网络带宽和所述当前图像组的帧数确定需要删除的预测编码图像帧的数量;
所述第二确定子模块,用于在确定所述预测编码图像帧的数量为一个时,将所述当前图像组中与所述帧内编码图像帧相邻的预测编码图像帧确定为所述目标图像帧;
所述第三确定子模块,用于在确定所述预测编码图像帧的数量大于一个、且小于或等于预设值时,根据预设间隔帧数从所述当前图像组中获取预测编码图像帧,将获取到的每个所述预测编码图像帧确定为所述目标图像帧;
所述第四确定子模块,用于在确定所述预测编码图像帧的数量大于所述预设值时,将所述当前图像组中的所有的预测编码图像帧确定为所述目标图像帧。
在一个实施例中,所述第一确定模块包括第五确定子模块;
所述第五确定子模块,用于根据公式B1=RN×Rs/Tmax确定所述目标网络带宽;
其中,Tmax=1/G,B1表示所述目标网络带宽,RN表示所述数据包的个数,Rs表示所述数据包的字节数量,Tmax表示当前所述帧内编码图像帧传输的最长时长,G表示所述当前图像组的帧数。
在一个实施例中,所述第二确定模块包括第六确定子模块;
所述第六确定子模块,用于根据公式确定所述数据包的目标发送间隔;
其中,T表示所述目标发送间隔,B表示所述当前网络带宽。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是本公开实施例提供的一种帧内编码图像帧的结构示意图;
图2是本公开实施例提供的一种帧内编码图像帧的传输示意图;
图3是本公开实施例提供的一种帧内编码图像帧的传输示意图;
图4是本公开实施例提供的一种数据传输控制方法的流程图;
图5是本公开实施例提供的一种数据传输控制方法的流程图;
图6是本公开实施例提供的一种帧内编码图像帧的传输示意图;
图7a是本公开实施例提供的一种数据传输控制装置的结构示意图;
图7b是本公开实施例提供的一种数据传输控制装置的结构示意图;
图7c是本公开实施例提供的一种数据传输控制装置的结构示意图;
图7d是本公开实施例提供的一种数据传输控制装置的结构示意图;
图7e是本公开实施例提供的一种数据传输控制装置的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
需要说明的是,在数据传输的过程中,多数情况下,并不是网络带宽不足以传输数据而引起网络拥塞,而是发送的视频流有一个突发的特点,如果不对这个突发的视频流发送进行控制,在发送视频流的瞬时速率超过当前网络带宽时,就会容易引起拥塞,引起丢包。如图1所示,以图像组的帧数为30帧为例,即GOP(Group of picture,图像组)=30帧,一个GOP由一个帧内编码图像帧(I帧)和29个预测编码图像帧(P帧)组成,若帧率为30帧/秒时,一秒内会有一个I帧和29个P帧组成,其中,I帧中的数据量相比P帧的数据量会高出很多。假设一个I帧编码出的数据会划分成40~60个RTP(Real-time Transport Protocol,实时传输协议)包,每个RTP包的数据大小为1396字节,在不进行任何速度控制的情况下,如图2所示,I帧中的所有RTP包的发送间隔为0,且以最大网卡速度进行发送的,如果网卡快要拥塞时,很容易引起丢包。且最大网卡速度通常是一个较高的网速,但是网络实际带宽则取决于网络本身所购买的带宽大小以及其他设备对带宽的使用情况等多种因素,因此,往往是不能够达到最大网卡速度的。这种情况下,当在某一时间内的带宽无法满足时,就会发生如图3所示的情况,也就是说会造成I帧中的部分数据丢失,而丢失的数据包又需要在后续传输中进行重传。
可见,网络拥塞常常会发生在I帧的传输过程中,本公开正是对I帧的传输进行控制。
本公开实施例提供一种数据传输控制方法,如图4所示,该方法包括以下步骤:
步骤401、获取当前图像组中帧内编码图像帧划分得到的数据包的个数和所述数据包的字节数量。
示例的,将当前图像帧中的帧内编码图像帧按照预设字节数进行划分,即将I帧按照预设字节数进行划分,得到多个数据包,每个数据包即为RTP包,在划分结束后,将数据包的个数进行统计,得到数据包的个数,即得到RTP包的个数。而且,在将帧内编码图像帧按照预设字节数来均匀划分时,则预设字节数即为每个数据包的大小,即为获取到每个数据包的字节数量。
需要说明的是,预设字节数的设定取决于协议规定的MTU(Maximum TransmissionUnit,最大传输单元)的大小,在实际使用时,可根据MTU的大小来确定预设字节数。
步骤402、根据所述数据包的个数和所述数据包的字节数量确定目标网络带宽。
可选的,根据公式B1=RN×Rs/Tmax确定所述目标网络带宽。
其中,Tmax=1/G,B1表示所述目标网络带宽,RN表示所述数据包的个数,Rs表示所述数据包的字节数量,Tmax表示当前所述帧内编码图像帧传输的最长时长,G表示所述当前图像组的帧数。
示例的,在获取到数据包的个数和每个数据包的字节数量时,将单位时间1秒除以当前图像组的帧数,得到当前帧内编码图像帧传输的最长时长,然后将数据包的个数和数据包的字节数量相乘,并将得到的乘积除以当前帧内编码图像帧传输的最长时长,得到均匀发送每个数据包时所需要的理论带宽,即为目标网络带宽。例如,假设当前图像组的帧数GOP=30帧,一个帧内编码图像帧被划分为的数据包的个数为60个,每个数据包的大小为1396个字节,则计算得到的目标网络带宽=60*1396/33ms≈2.4MByte/s(兆字节每秒),也就是说,在当前网络带宽至少为2.4M的情况下,采用本公开的数据传输控制方法可以保证帧内编码图像帧稳定发送,且不影响接收端的正常显示。
步骤403、获取当前网络带宽。
需要说明的是,具体获取当前网络带宽的方法与现有技术相同,可参考现有技术中的获取方式,在此不再赘述。
步骤404、根据所述数据包的字节数量和所述当前网络带宽确定所述数据包的目标发送间隔。
可选的,根据公式确定所述数据包的目标发送间隔。
其中,T表示所述目标发送间隔,B表示所述当前网络带宽。
示例的,在获取到当前网络带宽和数据包的字节数量时,根据数据包的字节数量和当前网络带宽确定数据包的目标发送间隔,即将数据包的字节数据除以当前网络带宽即可得到目标发送间隔;例如,每个数据包包括1396Byte(字节),当前网络带宽为3M=3*1048576Byte,则
步骤405、在确定所述目标网络带宽小于或等于所述当前网络带宽时,根据所述目标发送间隔对每个所述数据包进行发送。
示例的,在确定目标网络带宽,并获取到当前网络带宽时,将目标网络带宽与当前网络带宽进行比较,在确定目标网络带宽小于或等于当前网络带宽时,说明当前网络带宽足以支撑当前帧内编码图像帧的正常传输,此时,根据目标发送间隔对每个数据包进行均匀发送,以保证当前网络带宽能够支撑当前数据包的正常传输,从而避免造成网络拥塞,进而避免发生丢包现象。
本公开实施例提供一种数据传输控制方法,根据数据包的个数和数据包的字节数量确定目标网络带宽,并根据数据包的字节数量和当前网络带宽确定数据包的目标发送间隔,在确定目标网络带宽小于或等于当前网络带宽时,根据目标发送间隔对每个数据包进行发送,以保证当前网络带宽能够支撑当前数据包的正常传输,从而避免造成网络拥塞,进而避免发生丢包现象,保证接收端能够正常显示数据。
进一步的,如图5所示,所述方法还包括以下步骤406至步骤408:
步骤406、在确定所述目标网络带宽大于所述当前网络带宽时,根据预设策略从所述当前图像组中确定目标图像帧。
其中,所述预设策略为根据编码策略制定的策略;所述编码策略为所述当前图像组编码时采用的策略。
示例的,在确定目标网络带宽大于当前网络带宽时,说明当前网络带宽不足以支撑当前帧内编码图像帧的正常传输,此时需要进行丢帧处理,即首先根据预设策略从当前图像组中确定待删除的目标图像帧。
需要说明的是,预设策略需要根据编码策略进行制定,编码策略即为图像组中的帧内编码图像帧和预测编码图像帧编码采用的编码策略,若编码策略中预测编码图像帧只依赖于帧内编码图像帧时,则预设策略就是可以删除一个或者多个预测编码图像帧,因为即便删除预测编码图像帧,接收端在接收到该图像组时,由于预测编码图像帧的解码不依赖于前后的预测编码图像帧,只依赖于帧内编码图像帧,所以接收端可以对帧内编码图像帧和接收到的预设编码图像帧进行正常解码,进而能够正常显示。
需要说明的是,本公开对预设策略的具体内容不做限定,只要保证删除图像帧后接收端能够正常解码和显示即可。
可选的,根据预设策略从所述当前图像组中确定目标图像帧可通过以下方式实现:
根据所述当前网络带宽和所述当前图像组的帧数确定需要删除的预测编码图像帧的数量。
示例的,将当前图像组的帧数的倒数确定为每个数据包的发送时间,然后将当前网络带宽除以每个数据包的发送时间,即可得到需要删除的预测编码图像帧的数量;例如,当前图像组的帧数GOP=30帧,当前网络带宽=90M,则需要删除的即需要删除的预测编码图像帧的数量为3个。
在确定所述预测编码图像帧的数量为一个时,将所述当前图像组中与所述帧内编码图像帧相邻的预测编码图像帧确定为所述目标图像帧。
示例的,在确定需要删除的预测编码图像帧的数量为一个时,将当前图像组中与帧内编码图像帧相邻的预测编码图像帧确定为目标图像帧,这样,由于删除的预测编码图像帧靠近帧内编码图像帧,所以可以将帧内编码图像帧的传输时间延长一倍,从而可以保证帧内编码图像帧的正常传输。
在确定所述预测编码图像帧的数量大于一个、且小于或等于预设值时,根据预设间隔帧数从所述当前图像组中获取预测编码图像帧,将获取到的每个所述预测编码图像帧确定为所述目标图像帧。
示例的,在确定需要删除的预测编码图像帧的数量大于一个且小于或等于预设值时,根据预设间隔帧数从当前图像帧中的所有预测编码图像帧中获取一定数量的预测编码图像帧,并将获取到的所有预测编码图像帧确定为目标图像帧,这样,删除的预测编码图像帧的数量变多,就会将帧内编码图像帧的传输时间延长,从而可以保证帧内编码图像帧的正常传输。
在确定所述预测编码图像帧的数量大于所述预设值时,将所述当前图像组中的所有的预测编码图像帧确定为所述目标图像帧。
示例的,在确定需要删除的预测编码图像帧的数量大于预设值时,说明需要删除的预测编码图像帧太多,此时,将当前图像组中的所有预测编码图像帧都确定为目标图像帧,只将帧内编码图像帧进行传输,以保证接收端在接收到当前图像组的数据时,能够正常显示。
步骤407、删除所述目标图像帧。
示例的,在确定需要删除的目标图像帧时,将所有确定的目标图像帧进行删除,在发送时就不需要再发送这些删除的目标图像帧。
步骤408、根据所述目标发送间隔对每个所述数据包进行发送。
示例的,在将图像组中所有的目标图像帧删除之后,发送这些目标图像帧所用的时间就留给了发送帧内编码图像帧中的数据包,这时,将每个数据包根据目标发送间隔进行发送,就可以保证每个数据包能够正常传输,从而避免造成网络拥塞。
如图6所示,其为根据目标发送间隔发送数据包的示意图,可以看出,本公开虽然减慢了帧内编码图像帧的发送速度,但是相比较当网络发生拥塞造成丢包而重传数据包,传输效率会高很多。
本公开实施例提供一种数据传输控制方法,根据数据包的个数和数据包的字节数量确定目标网络带宽,并根据数据包的字节数量和当前网络带宽确定数据包的目标发送间隔,在确定目标网络带宽小于或等于当前网络带宽时,根据目标发送间隔对每个数据包进行发送,以保证当前网络带宽能够支撑当前数据包的正常传输,从而避免造成网络拥塞,进而避免发生丢包现象,保证接收端能够正常显示数据。另外,在确定目标网络带宽大于当前网络带宽时,根据预设策略从当前图像组中确定目标图像帧,并删除目标图像帧,保证将帧内编码图像帧的传输时间延长,从而可以保证帧内编码图像帧的正常传输。
基于上述实施例中所描述的数据传输控制方法下述为本公开装置实施例,可以用于执行本公开方法实施例。
本公开实施例提供一种数据传输控制装置,如图7a所示,该数据传输控制装置70包括:第一获取模块701、第一确定模块702、第二获取模块703、第二确定模块704和第一发送模块705。
其中,第一获取模块701,用于获取当前图像组中帧内编码图像帧划分得到的数据包的个数和所述数据包的字节数量。
第一确定模块702,用于根据所述数据包的个数和所述数据包的字节数量确定目标网络带宽。
第二获取模块703,用于获取当前网络带宽。
第二确定模块704,用于根据所述数据包的字节数量和所述当前网络带宽确定所述数据包的目标发送间隔。
第一发送模块705,用于在确定所述目标网络带宽小于或等于所述当前网络带宽时,根据所述目标发送间隔对每个所述数据包进行发送。
在一个实施例中,如图7b所示,所述数据传输控制装置70还包括第三确定模块706、删除模块707和第二发送模块708。
其中,第三确定模块706,用于在确定所述目标网络带宽大于所述当前网络带宽时,根据预设策略从所述当前图像组中确定目标图像帧;所述预设策略为根据编码策略制定的策略;所述编码策略为所述当前图像组编码时采用的策略。
删除模块707,用于删除所述目标图像帧。
第二发送模块708,用于根据所述目标发送间隔对每个所述数据包进行发送。
在一个实施例中,如图7c所示,所述第三确定模块706包括第一确定子模块7061、第二确定子模块7062、第三确定子模块7063和第四确定子模块7064。
其中,所述第一确定子模块7061,用于根据所述当前网络带宽和所述当前图像组的帧数确定需要删除的预测编码图像帧的数量。
所述第二确定子模块7062,用于在确定所述预测编码图像帧的数量为一个时,将所述当前图像组中与所述帧内编码图像帧相邻的预测编码图像帧确定为所述目标图像帧。
所述第三确定子模块7063,用于在确定所述预测编码图像帧的数量大于一个、且小于或等于预设值时,根据预设间隔帧数从所述当前图像组中获取预测编码图像帧,将获取到的每个所述预测编码图像帧确定为所述目标图像帧。
所述第四确定子模块7064,用于在确定所述预测编码图像帧的数量大于所述预设值时,将所述当前图像组中的所有的预测编码图像帧确定为所述目标图像帧。
在一个实施例中,如图7d所示,所述第一确定模块702包括第五确定子模块7021。
其中,所述第五确定子模块7021,用于根据公式B1=RN×Rs/Tmax确定所述目标网络带宽。
其中,Tmax=1/G,B1表示所述目标网络带宽,RN表示所述数据包的个数,Rs表示所述数据包的字节数量,Tmax表示当前所述帧内编码图像帧传输的最长时长,G表示所述当前图像组的帧数。
在一个实施例中,如图7e所示,所述第二确定模块704包括第六确定子模块7041。
所述第六确定子模块7041,用于根据公式确定所述数据包的目标发送间隔。
其中,T表示所述目标发送间隔,B表示所述当前网络带宽。
本公开实施例提供一种数据传输控制装置,根据数据包的个数和数据包的字节数量确定目标网络带宽,并根据数据包的字节数量和当前网络带宽确定数据包的目标发送间隔,在确定目标网络带宽小于或等于当前网络带宽时,根据目标发送间隔对每个数据包进行发送,以保证当前网络带宽能够支撑当前数据包的正常传输,从而避免造成网络拥塞,进而避免发生丢包现象,保证接收端能够正常显示数据。
基于上述图4对应的实施例中所描述的数据传输控制方法,本公开实施例还提供一种计算机可读存储介质,例如,非临时性计算机可读存储介质可以是只读存储器(英文:Read Only Memory,ROM)、随机存取存储器(英文:Random Access Memory,RAM)、CD-ROM、磁带、软盘和光数据存储装置等。该存储介质上存储有计算机指令,用于执行上述图4对应的实施例中所描述的数据传输控制方法,此处不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
Claims (10)
1.一种数据传输控制方法,其特征在于,所述方法包括:
获取当前图像组中帧内编码图像帧划分得到的数据包的个数和所述数据包的字节数量;
根据所述数据包的个数和所述数据包的字节数量确定目标网络带宽;
获取当前网络带宽;
根据所述数据包的字节数量和所述当前网络带宽确定所述数据包的目标发送间隔;
在确定所述目标网络带宽小于或等于所述当前网络带宽时,根据所述目标发送间隔对每个所述数据包进行发送。
2.根据权利要求1所述的方法,其特征在于,还包括:
在确定所述目标网络带宽大于所述当前网络带宽时,根据预设策略从所述当前图像组中确定目标图像帧;所述预设策略为根据编码策略制定的策略;所述编码策略为所述当前图像组编码时采用的策略;
删除所述目标图像帧;
根据所述目标发送间隔对每个所述数据包进行发送。
3.根据权利要求2所述的方法,其特征在于,所述根据预设策略从所述当前图像组中获取目标图像帧包括:
根据所述当前网络带宽和所述当前图像组的帧数确定需要删除的预测编码图像帧的数量;
在确定所述预测编码图像帧的数量为一个时,将所述当前图像组中与所述帧内编码图像帧相邻的预测编码图像帧确定为所述目标图像帧;
在确定所述预测编码图像帧的数量大于一个、且小于或等于预设值时,根据预设间隔帧数从所述当前图像组中获取预测编码图像帧,将获取到的每个所述预测编码图像帧确定为所述目标图像帧;
在确定所述预测编码图像帧的数量大于所述预设值时,将所述当前图像组中的所有的预测编码图像帧确定为所述目标图像帧。
4.根据权利要求1所述的方法,其特征在于,所述根据所述数据包的个数和所述数据包的字节数量确定目标网络带宽包括:
根据公式B1=RN×Rs/Tmax确定所述目标网络带宽;
其中,Tmax=1/G,B1表示所述目标网络带宽,RN表示所述数据包的个数,Rs表示所述数据包的字节数量,Tmax表示当前所述帧内编码图像帧传输的最长时长,G表示所述当前图像组的帧数。
5.根据权利要求1所述的方法,其特征在于,所述根据所述数据包的字节数量和所述当前网络带宽确定所述数据包的目标发送间隔包括:
根据公式确定所述数据包的目标发送间隔;
其中,T表示所述目标发送间隔,B表示所述当前网络带宽。
6.一种数据传输控制装置,其特征在于,包括:
第一获取模块,用于获取当前图像组中帧内编码图像帧划分得到的数据包的个数和所述数据包的字节数量;
第一确定模块,用于根据所述数据包的个数和所述数据包的字节数量确定目标网络带宽;
第二获取模块,用于获取当前网络带宽;
第二确定模块,用于根据所述数据包的字节数量和所述当前网络带宽确定所述数据包的目标发送间隔;
第一发送模块,用于在确定所述目标网络带宽小于或等于所述当前网络带宽时,根据所述目标发送间隔对每个所述数据包进行发送。
7.根据权利要求6所述的装置,其特征在于,还包括:
第三确定模块,用于在确定所述目标网络带宽大于所述当前网络带宽时,根据预设策略从所述当前图像组中确定目标图像帧;所述预设策略为根据编码策略制定的策略;所述编码策略为所述当前图像组编码时采用的策略;
删除模块,用于删除所述目标图像帧;
第二发送模块,用于根据所述目标发送间隔对每个所述数据包进行发送。
8.根据权利要求7所述的装置,其特征在于,所述第三确定模块包括第一确定子模块、第二确定子模块、第三确定子模块和第四确定子模块;
所述第一确定子模块,用于根据所述当前网络带宽和所述当前图像组的帧数确定需要删除的预测编码图像帧的数量;
所述第二确定子模块,用于在确定所述预测编码图像帧的数量为一个时,将所述当前图像组中与所述帧内编码图像帧相邻的预测编码图像帧确定为所述目标图像帧;
所述第三确定子模块,用于在确定所述预测编码图像帧的数量大于一个、且小于或等于预设值时,根据预设间隔帧数从所述当前图像组中获取预测编码图像帧,将获取到的每个所述预测编码图像帧确定为所述目标图像帧;
所述第四确定子模块,用于在确定所述预测编码图像帧的数量大于所述预设值时,将所述当前图像组中的所有的预测编码图像帧确定为所述目标图像帧。
9.根据权利要求6所述的装置,其特征在于,所述第一确定模块包括第五确定子模块;
所述第五确定子模块,用于根据公式B1=RN×Rs/Tmax确定所述目标网络带宽;
其中,Tmax=1/G,B1表示所述目标网络带宽,RN表示所述数据包的个数,Rs表示所述数据包的字节数量,Tmax表示当前所述帧内编码图像帧传输的最长时长,G表示所述当前图像组的帧数。
10.根据权利要求6所述的装置,其特征在于,所述第二确定模块包括第六确定子模块;
所述第六确定子模块,用于根据公式确定所述数据包的目标发送间隔;
其中,T表示所述目标发送间隔,B表示所述当前网络带宽。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010705389.5A CN111953613B (zh) | 2020-07-21 | 2020-07-21 | 数据传输控制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010705389.5A CN111953613B (zh) | 2020-07-21 | 2020-07-21 | 数据传输控制方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111953613A CN111953613A (zh) | 2020-11-17 |
CN111953613B true CN111953613B (zh) | 2024-02-23 |
Family
ID=73341789
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010705389.5A Active CN111953613B (zh) | 2020-07-21 | 2020-07-21 | 数据传输控制方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111953613B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115514916A (zh) * | 2022-08-17 | 2022-12-23 | 海南乾唐视联信息技术有限公司 | 一种图像组的处理方法、装置和通信装置及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004215201A (ja) * | 2003-01-09 | 2004-07-29 | Sony Corp | 情報処理装置および情報処理方法、データ通信システム、記録媒体、並びにプログラム |
CN1946079A (zh) * | 2006-11-02 | 2007-04-11 | 北京大学 | 一种网络带宽自适应的流媒体传输选择性丢帧方法 |
CN102497578A (zh) * | 2011-11-25 | 2012-06-13 | 武汉大学 | 一种3g网络环境下的移动音视频实时通信方法 |
CN102547375A (zh) * | 2010-12-23 | 2012-07-04 | 上海讯垒网络科技有限公司 | 一种快速实现预览h.264编码帧的传输方法 |
CN104125429A (zh) * | 2013-04-27 | 2014-10-29 | 杭州海康威视数字技术股份有限公司 | 视频数据传输的调节方法及装置 |
CN104735470A (zh) * | 2015-02-11 | 2015-06-24 | 海信集团有限公司 | 一种流媒体数据传输方法及装置 |
CN110365600A (zh) * | 2019-07-30 | 2019-10-22 | 广州市百果园信息技术有限公司 | 一种基于bbr的拥塞控制方法、装置、设备和存储介质 |
CN110730105A (zh) * | 2015-05-29 | 2020-01-24 | 腾讯科技(深圳)有限公司 | 图片数据传输方法、装置、设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108419103B (zh) * | 2017-02-09 | 2020-01-17 | 杭州海康威视数字技术股份有限公司 | 一种视频传输方法及装置 |
-
2020
- 2020-07-21 CN CN202010705389.5A patent/CN111953613B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004215201A (ja) * | 2003-01-09 | 2004-07-29 | Sony Corp | 情報処理装置および情報処理方法、データ通信システム、記録媒体、並びにプログラム |
CN1946079A (zh) * | 2006-11-02 | 2007-04-11 | 北京大学 | 一种网络带宽自适应的流媒体传输选择性丢帧方法 |
CN102547375A (zh) * | 2010-12-23 | 2012-07-04 | 上海讯垒网络科技有限公司 | 一种快速实现预览h.264编码帧的传输方法 |
CN102497578A (zh) * | 2011-11-25 | 2012-06-13 | 武汉大学 | 一种3g网络环境下的移动音视频实时通信方法 |
CN104125429A (zh) * | 2013-04-27 | 2014-10-29 | 杭州海康威视数字技术股份有限公司 | 视频数据传输的调节方法及装置 |
CN104735470A (zh) * | 2015-02-11 | 2015-06-24 | 海信集团有限公司 | 一种流媒体数据传输方法及装置 |
CN110730105A (zh) * | 2015-05-29 | 2020-01-24 | 腾讯科技(深圳)有限公司 | 图片数据传输方法、装置、设备及存储介质 |
CN110365600A (zh) * | 2019-07-30 | 2019-10-22 | 广州市百果园信息技术有限公司 | 一种基于bbr的拥塞控制方法、装置、设备和存储介质 |
Non-Patent Citations (1)
Title |
---|
一种自适应的视频流化前向纠错算法;梅峥, 李锦涛;软件学报(第09期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111953613A (zh) | 2020-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10567465B2 (en) | Streaming video over a network | |
CN113271316B (zh) | 多媒体数据的传输控制方法和装置、存储介质及电子设备 | |
US10602139B2 (en) | Embedded multimedia systems with adaptive rate control for power efficient video streaming | |
JP2001274861A (ja) | データ伝送方法および装置 | |
CN109155707B (zh) | 在多播网络中请求数据重传 | |
US9930388B2 (en) | Differential and distributive queuing of video frames | |
CN111093083B (zh) | 数据传输方法及装置 | |
US20020054635A1 (en) | Image transmitting method and apparatus and image receiving method and apparatus | |
CN109862400B (zh) | 一种流媒体传输方法、装置及其系统 | |
CN111953613B (zh) | 数据传输控制方法及装置 | |
CN113068001A (zh) | 基于级联摄像机的数据处理方法、装置、设备和介质 | |
CN111953612B (zh) | 数据传输控制方法及装置 | |
US9258347B2 (en) | Encoding of a video frame for transmission to a plurality of clients | |
CN114245196B (zh) | 一种录屏推流方法、装置、电子设备及存储介质 | |
CN113079347B (zh) | 一种远程驾驶的实现方法及实现装置 | |
KR20150028948A (ko) | 비디오 스트림 전송장치 및 전송방법 | |
JP3594296B2 (ja) | 動画像符号化データの送信装置および送信方法 | |
US20230082211A1 (en) | Methods and devices for controlling a transmission of a video stream | |
CN112203050B (zh) | 一种视频续传的方法及装置 | |
US11871079B2 (en) | Client and a method for managing, at the client, a streaming session of a multimedia content | |
CN115834975B (zh) | 一种视频传输方法、装置、设备及介质 | |
JP2000253380A (ja) | データ伝送装置 | |
CN116980713A (zh) | 一种带宽检测方法、装置、电子设备及存储介质 | |
CN115473875A (zh) | 视频帧的处理方法、电子设备及存储介质 | |
CN111541897A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |