本发明涉及通信,特别是涉及一种数据发送方法、装置、设备及存储介质。
背景技术:
1、随着5g网络的推广,5g视频业务逐渐成为移动通信领域备受关注的业务。在视频业务中,手机、摄像机等具有视频采集功能的推流节点采集视频,然后通过基站以及移动网络向视频业务的后台服务器发送所采集的视频。
2、现有技术中,各推流节点一般按照固定的数据发送速率发送视频帧,然而,由于移动网络带宽有限,同时接入移动网络的推流节点又可能较多,这时易导致各推流节点发送视频帧出现网络拥塞。
技术实现思路
1、本发明实施例的目的在于提供一种数据发送方法、装置、设备及存储介质,以降低推流节点发送视频帧时出现网络拥塞的概率。具体技术方案如下:
2、第一方面,本发明实施例提供了一种数据发送方法,应用于多接入移动边缘计算mec设备,所述方法包括:
3、获得接入所述mec设备的所有推流节点在当前周期内发送视频帧的理论数据量;
4、响应于当前周期结束,获得当前周期内接收到的所有推流节点所发送视频帧的实际数据量;
5、根据所述理论数据量和实际数据量,确定用于表征网络带宽是否充裕的表征信息;
6、根据所述表征信息,确定各推流节点在下一周期发送视频帧的目标帧数;
7、通知各推流节点按照所确定的目标帧数在下一周期发送视频帧。
8、本发明的一个实施例中,所述根据所述表征信息,确定各推流节点在下一周期发送视频帧的目标帧数,包括:
9、获得各推流节点在当前周期内发送视频帧的第一理论帧数;
10、若所述表征信息达到预设指标,则将各推流节点在当前周期对应的第一理论帧数与预设的调整步长之和确定为各推流节点在下一周期发送视频帧的目标帧数;
11、若所述表征信息未达到预设指标,则将各推流节点在当前周期对应的第一理论帧数与预设的调整步长之差确定为各推流节点在下一周期发送视频帧的目标帧数。
12、本发明的一个实施例中,所述根据所述表征信息,确定各推流节点在下一周期发送视频帧的目标帧数,包括:
13、获得所有推流节点在当前周期内发送关键帧的第二理论帧数;
14、获得所有推流节点在下一周期内发送关键帧的第三理论帧数;
15、若所述第二理论帧数与所述第三理论帧数之间的差异满足预设的第一帧数变化条件,基于所述第二理论帧数、所述第三理论帧数以及所述表征信息,确定各推流节点在下一周期发送视频帧的目标帧数。
16、本发明的一个实施例中,所述根据所述表征信息,确定各推流节点在下一周期发送视频帧的目标帧数,包括:
17、分别获得各推流节点在当前周期内发送关键帧的第四理论帧数;
18、分别获得各推流节点在下一周期内发送关键帧的第五理论帧数;
19、针对第一类推流节点,根据该推流节点对应的第四理论帧数、第五理论帧数以及所述表征信息,确定该推流节点在下一周期发送视频帧的帧类型以及各帧类型对应的目标帧数,其中,所述第一类推流节点对应的第四理论帧数与第五理论帧数间差异满足预设的第二帧数变化条件;
20、针对第二类推流节点,根据所述表征信息,对该推流节点在当前周期内发送视频帧的第一理论帧数进行调整,确定该推流节点在下一周期发送视频帧的目标帧数,其中,所述第二类推流节点对应的第四理论帧数与第五理论帧数间差异不满足预设的第二帧数变化条件。
21、本发明的一个实施例中,所述根据所述理论数据量和实际数据量,确定用于表征网络带宽是否充裕的表征信息,包括:
22、计算所述实际数据量与理论数据量的比值,将计算得到的比值确定为用于表征网络带宽是否充裕的表征信息。
23、第二方面,本发明实施例提供了一种数据发送装置,应用于多接入移动边缘计算mec设备,所述装置包括:
24、理论数据量获得模块,用于获得接入所述mec设备的所有推流节点在当前周期内发送视频帧的理论数据量;
25、实际数据量获得模块,用于响应于当前周期结束,获得当前周期内接收到的所有推流节点所发送视频帧的实际数据量;
26、表征信息确定模块,用于根据所述理论数据量和实际数据量,确定用于表征网络带宽是否充裕的表征信息;
27、目标帧数确定模块,用于根据所述表征信息,确定各推流节点在下一周期发送视频帧的目标帧数;
28、目标帧数通知模块,用于通知各推流节点按照所确定的目标帧数在下一周期发送视频帧。
29、本发明的一个实施例中,所述目标帧数确定模块,包括:
30、第一理论帧数获得子模块,用于获得各推流节点在当前周期内发送视频帧的第一理论帧数;
31、第一目标帧数确定子模块,用于若所述表征信息达到预设指标,则将各推流节点在当前周期对应的第一理论帧数与预设的调整步长之和确定为各推流节点在下一周期发送视频帧的目标帧数;
32、第二目标帧数确定子模块,用于若所述表征信息未达到预设指标,则将各推流节点在当前周期对应的第一理论帧数与预设的调整步长之差确定为各推流节点在下一周期发送视频帧的目标帧数。
33、本发明的一个实施例中,所述目标帧数确定模块,包括:
34、第二理论帧数获得子模块,用于获得所有推流节点在当前周期内发送关键帧的第二理论帧数;
35、第三理论帧数获得子模块,用于获得所有推流节点在下一周期内发送关键帧的第三理论帧数;
36、第三目标帧数确定子模块,用于若所述第二理论帧数与所述第三理论帧数之间的差异满足预设的第一帧数变化条件,基于所述第二理论帧数、所述第三理论帧数以及所述表征信息,确定各推流节点在下一周期发送视频帧的目标帧数。
37、本发明的一个实施例中,所述目标帧数确定模块,具体用于分别获得各推流节点在当前周期内发送关键帧的第四理论帧数;分别获得各推流节点在下一周期内发送关键帧的第五理论帧数;针对第一类推流节点,根据该推流节点对应的第四理论帧数、第五理论帧数以及所述表征信息,确定该推流节点在下一周期发送视频帧的帧类型以及各帧类型对应的目标帧数,其中,所述第一类推流节点对应的第四理论帧数与第五理论帧数间差异满足预设的第二帧数变化条件;针对第二类推流节点,根据所述表征信息,对该推流节点在当前周期内发送视频帧的第一理论帧数进行调整,确定该推流节点在下一周期发送视频帧的目标帧数,其中,所述第二类推流节点对应的第四理论帧数与第五理论帧数间差异不满足预设的第二帧数变化条件。
38、本发明的一个实施例中,所述表征信息确定模块,具体用于计算所述实际数据量与理论数据量的比值,将计算得到的比值确定为用于表征网络带宽是否充裕的表征信息。
39、第三方面,本发明实施例提供了一种mec设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
40、存储器,用于存放计算机程序;
41、处理器,用于执行存储器上所存放的程序时,实现上述第一方面所述的数据发送方法步骤。
42、第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的数据发送方法步骤。
43、第五方面,本发明实施例提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述上述第一方面所述的数据发送方法步骤。
44、由以上可见,本发明实施例提供的方案中,mec(multi-access mobile edgecomputing,多接入移动边缘计算)设备不仅获得所有接入的推流节点在当前周期内发送视频帧的理论数据量,还在当前周期结束后,获得当前周期内接收到的所有推流节点所发送视频帧的实际数据量,然后,根据上述理论数据量和实际数据量确定网络带宽是否充裕,得到表征信息,在此基础上,根据上述表征信息来确定推流节点下一周期发送视频帧的目标帧数,使得推流节点在下一周期依据mec设备确定的帧数发送视频帧。这样各推流节点在各个不同的周期内不再按照固定的数据发送速率发送视频帧,而是结合网络带宽的充裕情况在各个周期内不断调整所发送视频帧的帧数,从而能够使得推流节点在各个周期内所发送视频帧的帧数与网络带宽相匹配,有利于防止推流节点在网络带宽不足的情况下发送过多视频帧导致数据堆积,进而有利于降低推流节点发送视频帧时出现网络拥塞的概率。
45、当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。