CN113765993A - 一种下载速度预测方法、装置及存储介质 - Google Patents
一种下载速度预测方法、装置及存储介质 Download PDFInfo
- Publication number
- CN113765993A CN113765993A CN202110515853.9A CN202110515853A CN113765993A CN 113765993 A CN113765993 A CN 113765993A CN 202110515853 A CN202110515853 A CN 202110515853A CN 113765993 A CN113765993 A CN 113765993A
- Authority
- CN
- China
- Prior art keywords
- downloading
- target
- environment information
- historical
- media resource
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 140
- 230000008569 process Effects 0.000 claims abstract description 79
- 238000012545 processing Methods 0.000 claims abstract description 33
- 230000001960 triggered effect Effects 0.000 claims description 21
- 230000001965 increasing effect Effects 0.000 claims description 4
- 238000012216 screening Methods 0.000 claims description 4
- 238000012546 transfer Methods 0.000 claims description 4
- 230000007613 environmental effect Effects 0.000 claims description 3
- 230000001976 improved effect Effects 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 12
- 238000013473 artificial intelligence Methods 0.000 description 10
- 238000012549 training Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 8
- 238000010801 machine learning Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 4
- 238000003064 k means clustering Methods 0.000 description 4
- 241000282414 Homo sapiens Species 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000002787 reinforcement Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 239000013598 vector Substances 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000008093 supporting effect Effects 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- 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/14—Network analysis or design
- H04L41/147—Network analysis or design for predicting network behaviour
-
- 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/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/613—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for the control of the source by the destination
-
- 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/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请提供一种下载速度预测方法、装置及存储介质,应用于数据处理技术领域,该方法中,终端设备在媒体资源应用程序的运行过程中,获取目标环境信息,目标环境信息至少包含使用媒体资源应用程序时的网络状态;基于目标环境信息,从预先存储的历史环境信息与历史下载速度集合的第一对应关系中,获取目标环境信息对应的历史下载速度集合,每个历史下载速度表征:在与目标环境信息匹配的历史环境信息下,使用媒体资源应用程序时的媒体资源下载速度;基于历史下载速度集合,预测目标环境信息对应的目标下载速度。基于终端设备存储的历史数据实时进行预测,提高预测效率;且仅参考自身生成的数据,提高预测的准确性,保障媒体资源应用程序运行流畅度。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种下载速度预测方法、装置及存储介质。
背景技术
为了保障媒体资源应用程序运行流畅度,需要提前预测下载媒体资源的下载速度。
目前,终端设备在预测下载媒体资源的下载速度的过程中,针对突发性的网络状态,并不能明显感知,导致预测的下载速度不准确,且预测效率低;因此,如何准确快速的预测下载媒体资源的下载速度,以保障媒体资源应用程序运行流畅度,提供用户的使用体验,是一个需要解决的问题。
发明内容
本申请提供一种下载速度预测方法、装置及存储介质,用以准确预测下载速度,提高预测效率。
第一方面,本申请实施例提供一种下载速度预测方法,该方法包括:
在媒体资源应用程序的运行过程中,获取目标环境信息,其中,目标环境信息至少包含使用媒体资源应用程序时的网络状态;
基于目标环境信息,从预先存储的历史环境信息与历史下载速度集合的第一对应关系中,获取目标环境信息对应的历史下载速度集合,其中,历史下载速度集合中每个历史下载速度表征:在与目标环境信息匹配的历史环境信息下,使用媒体资源应用程序时的媒体资源下载速度;
基于历史下载速度集合,预测目标环境信息对应的目标下载速度。
第二方面,本申请实施例提供一种下载速度预测装置,该装置包括:
第一获取单元,用于在媒体资源应用程序的运行过程中,获取目标环境信息,其中,目标环境信息至少包含使用媒体资源应用程序时的网络状态;
第二获取单元,用于基于目标环境信息,从预先存储的历史环境信息与历史下载速度集合的第一对应关系中,获取目标环境信息对应的历史下载速度集合,其中,历史下载速度集合中每个历史下载速度表征:在与目标环境信息匹配的历史环境信息下,使用媒体资源应用程序时的媒体资源下载速度;
预测单元,用于基于历史下载速度集合,预测目标环境信息对应的目标下载速度。
在一种可能的实现方式中,预测单元具体用于:
对历史下载速度集合中的历史下载速度进行聚类处理,确定各个预设分组中,包含历史下载速度集合中的历史下载速度的数量;
筛选出包含历史下载速度的数量最多的预设类分组,并基于筛选出的预设分组对应的各个下载速度,预测目标下载速度。
在一种可能的实现方式中,第一获取单元具体用于:在媒体资源应用程序处于第一播放状态时,获取目标环境信息,其中,第一播放状态为响应用户触发的播放指令时的状态;
预测单元还用于:根据预设的下载速度与码率的第二对应关系,获取目标下载速度对应的目标码率,并在按照目标下载速度下载相应的媒体资源的过程,按照目标码率解码媒体资源。
在一种可能的实现方式中,第一获取单元具体用于:在媒体资源应用程序处于第二播放状态时,获取目标环境信息,其中,第二播放状态为响应用户触发的播放指令后,响应用户触发的暂停指令前,播放媒体资源时的状态;
预测单元还用于:在第二播放状态下,获取播放媒体资源时使用的实际码率;
基于目标下载速度,确定媒体资源的目标下载量,以及基于实际码率,确定媒体资源的目标播放量;
基于目标下载量和目标播放量之间的关联关系,采用预设的处理策略,在下载媒体资源的过程中执行相应处理。
在一种可能的实现方式中,预测单元还用于:
确定预设的处理策略包括调整缓冲区大小;
若目标下载量大于目标播放量,则在下载媒体资源的过程中,减小缓冲区大小;
若目标下载量小于目标播放量,则在下载媒体资源的过程中,增加缓冲区大小。
在一种可能的实现方式中,预测单元还用于:
确定预设的处理策略包括确定下载媒体资源的下载方式;
若目标下载量大于目标播放量,则在下载媒体资源的过程中,采用点对点下载方式下载媒体资源;
若目标下载量小于目标播放量,则在下载媒体资源的过程中,采用超文本传输协议下载方式下载媒体资源。
在一种可能的实现方式中,第一获取单元具体用于:在媒体资源应用程序处于第二播放状态时,获取目标环境信息,其中,第二播放状态为响应用户触发的播放指令后,响应用户触发的暂停指令前,播放媒体资源时的状态;
预测单元还用于:根据预设的下载速度与码率的第二对应关系,将播放状态下使用的码率,调整为目标下载速度对应的目标码率,并按照目标码率解码媒体资源。
在一种可能的实现方式中,目标环境信息还包含:
使用媒体资源应用程序时,通过系统应用程序接口(Application ProgrammingInterface,API)获取的时间点、星期以及地理位置信息中的至少一种。
在一种可能的实现方式中,通过如下方式更新预先存储的历史环境信息与历史下载速度集合的第一对应关系:
在目标环境信息对应的目标环境下,在多个连续的设定时间段内,获取各个设定时间段内下载媒体资源的数据量,并基于数据量和设定时间段的时长,分别确定各个设定时间段对应的第一实际下载速度;
针对各个设定时间段中的一个设定时间段执行:基于各个第一实际下载速度,通过加权移动平均的方式,确定一个设定时间段对应的参考下载速度;
基于各个参考下载速度的平均下载速度,确定目标环境信息对应的第二实际下载速度;
根据目标环境信息和第二实际下载速度的对应关系,更新预先存储的历史环境信息与历史下载速度集合的第一对应关系。
第三方面,本申请实施例提供一种下载速度预测设备,包括:存储器和处理器,其中,存储器,用于存储计算机指令;处理器,用于执行计算机指令以实现本申请实施例提供的下载速度预测方法。
第四方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质存储有计算机指令,计算机指令被处理器执行时实现本申请实施例提供的下载速度预测方法。
本申请有益效果如下:
本申请实施例提供一种下载速度预测方法、装置及存储介质,应用于数据处理技术,该方法中,终端设备在媒体资源应用程序的运行过程中,获取目标环境信息;然后,基于目标环境信息,从预先存储的历史环境信息与历史下载速度集合的第一对应关系中,获取与目标环境信息匹配的历史环境信息对应的历史下载速度集合,每个历史下载速度表征:在历史环境信息下,使用媒体资源应用程序时的媒体资源下载速度;在获取历史下载速度集合后,基于历史下载速度集合,预测目标环境信息对应的目标下载速度。终端设备在预测下载速度集合的过程中,无需定期更新下载速度预测模型,而是基于自身存储的历史数据实时进行预测,提高预测效率;预测时仅参考自身生成的数据,并不存在其他终端设备生成的数据,提高了该终端设备运行媒体资源应用程序时预测下载速度的准确性,保障媒体资源应用程序运行的流畅度;且预测的下载速度更具有指向性,即该下载速度仅适用于该终端设备上的媒体资源应用程序,满足终端设备预测下载速度的个性化需求。
本申请的其它特征向量和优点将在随后的说明书中阐述,并且,子模型地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为相关技术中媒体资源播放过程中播放卡顿的示意图;
图2为相关技术中终端设备上报媒体资源下载速度的方法流程图;
图3为相关技术中训练下载速度预测模型的示意图;
图4为本申请实施例提供的一种应用场景示意图;
图5为本申请实施例提供的另一种应用场景示意图;
图6为本申请实施例提供的一种终端设备下载速度预测的方法的流程图;
图7为本申请实施例提供的一种第一播放状态的示意图;
图8为本申请实施例提供的一种第二播放状态的示意图;
图9为本申请实施例提供的一种终端设备更新历史环境信息和历史下载速度集合的第一对应关系的方法流程图;
图10为本申请实施提供的一种对目标环境信息对应的下载速度集合进行聚类处理的示意图。
图11为本申请实施例提供的一种终端设备下载速度预测的整体方法流程图;
图12为本申请实施例提供的一种下载速度预测装置结构图;
图13为本申请实施例提供的一种计算设备结构图。
具体实施方式
为了使本申请的目的、技术方案及有益效果更加清楚明白,以下将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请部分实施例,并不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
以下对本申请实施例中的部分用语进行解释说明,以便于本领域技术人员理解。
1、媒体资源,主要指内容资产,是电视台、新闻媒体、网络媒体、广播媒体、户外媒体等,生产的文字、图片、音视频等业务数据。媒体资源应用程序,主要是指用于播放媒体资源的应用程序,比如用于播放音视频的视频播放器、音乐播放器等应用程序。
2、目标环境信息,是媒体资源应用程序的运行环境,其中包括有自然环境信息,比如使用媒体资源应用程序时的时间信息,还包括网络环境信息,比如使用媒体资源环境时的网络状态。
3、聚类,是将物理或抽象对象的集合分成由类似的对象组成的多个分组的过程。由聚类所生成的分组是一组数据对象的集合,同一个分组中的对象彼此相似,不同分组中的对象相异。在本申请实施例中,针对历史下载速度集合中的下载速度进行聚类,同一个分组中的下载速度在同一下载速度区间内。
其中,聚类包括有k均值聚类算法,k均值聚类算法(k-means clusteringalgorithm)是一种迭代求解的聚类分析算法,具体预将数据分为K组,则随机选取K个对象作为初始的聚类中心,然后计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。聚类中心以及分配给它们的对象就代表一个聚类。每分配一个样本,聚类的聚类中心会根据聚类中现有的对象被重新计算。这个过程将不断重复直到满足某个终止条件。终止条件可以是没有(或最小数目)对象被重新分配给不同的聚类,没有(或最小数目)聚类中心再发生变化,误差平方和局部最小。
4、加权移动平均法:是对观察值分别给予不同的权数,按不同权数求得移动平均值,并以最后的移动平均值为基础,确定预测值的方法。采用加权移动平均法,是因为观察期的近期观察值对预测值有较大影响,它更能反映近期市场变化的趋势。所以,对于接近预测期的观察值给予较大权数值,对于距离预测期较远的观察值则相应给予较小的权数值,以不同的权数值调节各观察值对预测值所起的作用,使预测值能够更近似地反映市场未来的发展趋势。
下面对本申请实施例的设计构思进行简单介绍。
本申请实施例涉及媒体资源播放以及媒体资源下载等场景;以媒体资源播放场景为例:
在媒体资源播放过程中,地理位置的变更、网络的变更、网络访问用户数的变更以及时间变更等,都会引起网络状态的波动,网络状态波动直接影响媒体资源的下载速度。若网络状态波动导致下载速度降低,则在媒体资源播放过程中,将导致内存缓存的媒体资源不足,进一步导致媒体资源播放卡顿。请参考图1,图1为相关技术中一种媒体资源播放卡顿的示意图,从图1中可知媒体资源当前播放卡顿,正在加载媒体资源。
相关技术中,为了保障媒体资源播放的流畅度,提出一种提前预测下载速度的技术方案。
在相关技术中,预测下载速度时,基于人工智能(Artificial Intelligence,AI)和机器学习(Machine Learning,ML)技术而设计。
人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。
人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能技术主要包括计算机视觉技术、自然语言处理技术、以及机器学习/深度学习等几大方向。随着人工智能技术研究和进步,人工智能在多个领域展开研究和应用,例如常见的智能家居、智能客服、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、机器人、智能医疗等,相信随着技术的发展,人工智能将在更多的领域获得应用,并发挥越来越重要的价值。
机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。对比于数据挖掘从大数据之间找相互特性而言,机器学习更加注重算法的设计,让计算机能够自动地从数据中“学习”规律,并利用规律对未知数据进行预测。
机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习等技术。强化学习(Reinforcement Learning,RL),又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。
具体的,请参考图2,图2示例性提供了相关技术中一种下载速度预测的方法流程图,包括如下步骤:
步骤S200,终端设备响应用户触发的媒体资源应用程序启动指令,显示媒体资源应用程序的显示界面;
步骤S201,终端设备响应用户在媒体资源应用程序的显示界面中,触发的播放或下载指令,并从用于提供媒体资源的第一服务器中获取媒体资源;
步骤S202,终端设备基于获取的媒体资源的数据量以及所用时间,确定下载速度;
步骤S203,终端设备向用于训练下载速度预测模型的第二服务器,上报确定的下载速度;
步骤S204,第二服务器将终端上报的下载速度进行整理,并存储到数据库中;
步骤S205,第二服务器基于数据库中存储的各个终端设备对应的下载速度进行训练,获得训练后的下载速度预测模型;
请参考图3,图3示例性提供了相关技术中训练下载速度预测模型的示意图。从图3中可知,数据库中存储大量终端设备上报的下载速度,并组成下载速度样本集合。从数据库中获取下载速度样本集合,基于时间序列对应的下载速度做训练,获得下载速度预测模型;此时下载速度预测模型是根据大量终端设备的一段历史时间的速度趋势,预测未来的趋势。
步骤S206,第二服务器向终端设备下发训练后的下载速度预测模型;
步骤S207,终端设备基于下载速度预测模型,进行下载速度预测。
从相关技术中的内容可知,相关技术中至少存在如下问题:
问题1、用于训练下载速度预测模型的第二服务器中需要大量的存储资源,以存储各个终端设备的用户上报的下载速度,成本开销大;
问题2、由于终端设备中的下载速度预测模型是由第二服务器下发并更新的,当网络环境发生变化时,第二服务器需要重新训练下载速度训练模型,并将重新训练的下载速度预测模型下发到终端设备中,第二服务器获取训练数据集需要时间、训练模型需要时间、传输也需要时间,此时将导致终端设备不能及时针对当前网络环境进行下载速度预测,预测下载速度的效率降低;
问题3、由于终端设备在播放过程中,使用的下载媒体资源的模型为:下载一定的缓冲区后停止下载,待播放到剩余一定缓冲区后继续下载,导致终端的数据具有间断性,不具连续性;因此使用这些数据对下载速度预测模型进行训练时,将导致训练后获取的模型不够准确,模型的准确性直接影响预测结果侧准确性,因此导致预测的下载速度准确性差。
问题4、模型训练过程中使用的是大量终端设备的下载速度,每个终端设备使用时由于用户行为、遮挡等外界因素,下载速度存在较大差异,因此在基于参考了多个终端设备的下载速度预测的下载速度模型进行下载速度预测时,预测的下载速度不够准确,参考的终端设备越多,准确性越差。
问题5、针对突发性的网络变化,感知并不明显,导致准确性降低。
有鉴于此,本申请实施例提供一种下载速度预测方法、装置及存储介质:
在本申请实施例中,终端设备在媒体资源应用程序的运行过程中,获取目标环境信息,目标环境信息包含当前使用媒体资源应用程序时的网络环境信息(比如,网络名称、网际协议地址(Internet Protocol Address,IP)地址、网络状态、基本服务区域标识(Basic Service Set Identifier,BSSID)),当前使用媒体资源应用程序时的时间信息(比如,几时几分几秒、星期几),当前使用媒体资源应用程序时所处的地理位置信息等;
然后,基于目标环境信息,从预先存储的历史环境与历史下载速度集合的第一对应关系中,获取目标环境信息对应的历史下载速度集合,历史下载速度集合中的每个历史下载速度表征:在与目标环境信息匹配的历史环境信息下,使用媒体资源应用程序时的媒体资源下载速度;
基于历史下载速度集合,预测目标环境信息对应的目标下载速度。
可见,由终端设备基于历史下载速度集合,预测目标环境信息对应的目标下载速度,无需将下载速度上报到用于预测下载速度预测模型的第二服务器,使用第二服务器执行下载速度预测的过程,因此,第二服务器中也就不需要大量的存储空间,来存储各个终端设备上报的下载速度,节约成本;终端设备在预测下载速度集合的过程中,无需定期更新下载速度预测模型,减少了终端设备等待预测模型更新以及预测模型传输的时间,而是基于自身存储的历史下载速度集合实时进行预测,提高预测效率;预测时仅参考自身生成的历史下载速度,并不存在其他终端设备生成的历史下载速度,提高了该终端设备运行媒体资源应用程序时预测下载速度的准确性,保障媒体资源应用程序运行的流畅度;且终端设备基于自身生成的历史下载速度,预测的下载速度更具有指向性,即该下载速度仅适用于该终端设备上的媒体资源应用程序,满足终端设备预测下载速度的个性化需求。
在介绍完本申请实施例的设计思想之后,下面对本申请实施例的技术方案能够适用的应用场景做一些简单介绍,需要说明的是,以下介绍的应用场景仅用于说明本申请实施例而非限定。在具体实施过程中,可以根据实际需要灵活地应用本申请实施例提供的技术方案。
请参考图4,图4为本申请实施例提供的一种可能的应用场景示意图,该应用场景中包括终端设备40(如可以但不局限于包括图中示意出的40-1或40-2)和服务器41;
其中,终端设备40为用户使用的电子设备,该终端设备40中安装运行有媒体资源应用程序。终端设备40可以是个用户计算机、手机、平板电脑、笔记本、电子书阅读器、车载终端等计算机设备。
服务器41可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
终端设备40通过超文本传输协议(Hyper Text Transportation Protocol,http)下载方式直接从媒体资源应用程序对应的服务器41中下载媒体资源,此时,终端设备40与服务器41之间可以通过通信网络进行通信,通信网络是有线网络或无线网络。因此终端设备40和服务器41可以通过有线或无线通信方式进行直接或间接地连接。比如,终端设备40还可以通过无线接入点42与服务器41间接地连接,或终端设备40通过因特网与服务器41直接地连接,本申请在此不做限制。
请参考图5,图5为本申请实施例提供的另一种可能应用场景示意图,该应用场景中包括由媒体资源应用程序对应的客户端50以及多个节点51通过网络通信的形式连接形成的分布式系统。其中,多个节点51可以为接入网络中的任意形式的计算设备,比如上述服务器41以及上述终端设备40等。
以分布式系统为区块链系统为例,图5是本申请实施例提供的分布式系统应用于区块链系统的一个可选的结构示意图,由多个节点51和客户端50形成,多个节点51之间形成组成的点对点(Peer To Peer,P2P)网络,P2P协议是一个运行在传输控制协议(Transmission Control Protocol,TCP)协议之上的应用层协议。在分布式系统中,任何机器如服务器41以及终端设备40都可以加入而成为节点,节点包括硬件层、中间层、操作系统层和应用层。
请参考图5示出的区块链系统中各节点的功能,涉及的功能包括:
1)路由:
路由功能为节点51具有的基本功能,用于支持节点51之间的通信。
2)应用:
应用功能用于部署在区块链中,根据实际业务需求而实现特定业务,记录实现功能相关的数据形成记录数据,在记录数据中携带数字签名以表示任务数据的来源,将记录数据发送到区块链系统中的其他节点,供其他节点在验证记录数据来源以及完整性成功时,将记录数据添加到临时区块中。
在本申请实施例中,图5所示的分布式系统中的多个节点51为终端设备40,当终端设备40中运行媒体资源应用程序时,可通过P2P下载方式从其他的终端设备40上进行数据交换,从而实现媒体资源的下载。
在一种可能的应用场景中,本申请实施例提供的一种下载速度预测方法适用于所有使用媒体资源应有程序的用户,尤其适用于正常上班和正常工作的一类用户。对于正常上班和正常工作的一类用户而言,这类用户每周都有固定的作息时间,比如上下班时间、回家的时间、乘坐地铁的时间、乘坐电梯的时间等;在不同的时间下网络状态不同,下载速度不同,比如乘坐地铁或电梯的时间网络状态较差,下载速度慢,就会出现媒体资源播放卡顿的现象,但是通过本申请实施例提供的一种下载速度预测方法,在用户使用媒体资源应有程序播放媒体资源的过程中,可以获取用户的地理位置信息(如具体地点)、时间信息(如星期,具体的时间点)、网络信息(如使用的网络名称、网络状态、IP地址)以及媒体资源的过程中的下载速度的大小,然后整理成相应的对应关系,并基于整理后的信息,更新终端设备在本地存储的历史环境信息和历史下载速度集合的第一对应关系。
有了终端设备本地存储的历史环境信息和历史下载速度集合的第一对应关系后,就可以获取使用该终端设备的用户在每天的每个地点、每个时间点、使用的网络的下载速度情况,在用户进入电梯或者地铁等弱网信号的时候,提前感知,加快下载速度,防止用户进入弱网后产生卡顿。
基于上述应用场景,下面结合上述描述的应用场景,根据附图来描述本申请示例性实施方式提供的下载速度预测方法,需要注意的是,上述应用场景仅是为了便于理解本申请的精神和原理而示出,本申请的实施方式在此方面不受任何限制。
请参考图6,图6示例性提供本申请实施例中一种下载速度预测方法流程图,包括如下步骤:
步骤S600,终端设备在媒体资源应用程序的运行过程中,获取目标环境信息。
在本申请实施例中,媒体资源应用程序在运行过程中,主要包括有两种运行状态,分别为:播放状态和离线下载状态,其中播放状态又包括有第一播放状态和第二播放状态。
媒体资源应用程序的第一播放状态,为终端设备响应用户在媒体资源应用程序的显示界面中,触发的播放指令时的状态,也可以称为启播状态;也就是说,第一播放状态为:媒体资源应用程序在暂停媒体资源播放后,再次触发媒体资源播放时的初始状态;请参考图7,图7示例性提供了本申请实施例中第一播放状态的示意图;
媒体资源应用程序的第二播放状态,为终端设备实时播放媒体资源时的状态;也就是说,第二播放状态为位于:响应用户在媒体资源应用程序的显示界面中,触发的播放指令后,以及暂停媒体资源播放的暂停指令前,媒体资源实时播放的状态;请参考图8,图8示例性提供了本申请实施例中第二播放状态的示意图。
在本申请实施例中,不论媒体资源应用程序处于播放状态还是离线下载状态是,都需要从媒体资源应用程序对应的服务器中下载媒体资源。终端设备进行媒体资源下载时,就一定存在相应的下载速度,下载速度影响媒体资源应用程序运行的流畅度,而终端设备当前所处的目标环境信息严重影响下载媒体资源时使用的下载速度。因此,不论媒体资源应用程序处于何种运行状态下,终端设备都需要确定自身当前所处的目标环境信息。
目标环境信息包括:自然环境信息和网络环境信息中的至少一种。
其中,自然环境信息包括但不限于如下信息中的至少一种:
终端设备在媒体资源应用程序的运行过程中,通过系统API获取的当前使用媒体资源应用程序的时间点和星期等时间信息;
终端设备在媒体资源应用程序的运行过程中,通过系统API获取的当前使用媒体资源应用程序的地理位置信息。
网络环境信息包括但不限于如下信息中的至少一种:
终端设备在媒体资源应用程序的运行过程中,通过系统API获取当前使用媒体资源应用程序时的网络名称,比如WiFi名称;
终端设备在媒体资源应用程序的运行过程,基于获取下载地址时服务端返回的数据信息,确定的自身IP地址、BSSID以及网络状态等。
在一种可能的实现方式中,终端设备还可以向基站发送获取环境信息的请求,并接收基站返回的目标环境信息;即通过终端设备向基站发送请求信息,由基站告知终端设备当前时间、当前地域带宽等信息。
为了保障媒体资源应用程序运行的流畅度,应提前预测终端设备当前所处的目标环境下的目标下载速度,并根据预测的目标下载速度和媒体资源应用程序当前的运行状态,确定是否需要调整缓冲区大小,以达到节省带宽,保障媒体资源应用程序运行流畅的目的。
在本申请实施例中,终端设备主要基于自身安装的各个媒体资源应用程序的历史运行状态,产生的历史下载速度,预测目标环境信息对应的目标下载速度;或,基于终端设备当前运行的媒体资源应用程序的历史运行状态,产生的历史下载速度,预测目标环境信息对应的目标下载速度。因此,在确定目标环境信息后,需要获取目标环境信息对应的历史下载速度集合,以根据历史下载速度集合中的历史下载速度,预测目标环境信息对应的目标下载速度。
步骤S601,终端设备基于目标环境信息,从预先存储的历史环境信息与历史下载速度集合的第一对应关系中,获取目标环境信息对应的历史下载速度集合。
在本申请实施例中,将获取的历史环境信息与历史环境信息对应的历史下载速度集合,整理成历史环境信息与历史下载速度集合的第一对应关系,并预先存储,历史环境信息中包含有与目标环境信息一致的环境信息。因此,在获得目标环境信息后,在预先存储的第一对应关系中,先查找与目标环境信息匹配的历史环境信息,再确定匹配的历史环境信息对应的历史下载速度集合。因此,历史下载速度集合中的每个历史下载速度,均可以用于表征在与目标环境信息匹配的历史环境信息下,使用媒体资源应用程序时的媒体资源下载速度。
为了使获取到的目标环境信息对应的历史下载速度集合更加准确,以保证预测的目标下载速度的准确性。本申请实施例中,还提供了一种更新历史环境信息和历史下载速度集合的第一对应关系的方法,请参考图9,图9示例性提供了本申请实施例中一种更新历史环境信息和历史下载速度集合的第一对应关系的方法流程图,包括如下步骤:
步骤S900,终端设备在启动媒体资源应用程序后,在媒体资源应用程序的运行过程中,获取目标环境信息;
在本申请实施例中,终端设备接收到用户触发的启动媒体资源应用程序后,开始启动媒体资源应用程序;并接收到用户触发的播放指令或下载指令中的至少一种时,开始运行媒体资源应用程序。在媒体资源应用程序的运行过程中,获取目标环境信息。具体的,获取目标环境信息的方式可以参见步骤S600的论述,在此不再赘述。
步骤S901,终端设备在目标环境信息对应的目标环境下,基于下载媒体资源的数据量和所用时间,实时确定目标环境信息对应的第二实际下载速度;
在一种可能的实施例中,为了保证实际下载速度的准确性,在目标环境信息对应的目标环境下,在多个连续的设定时间段内,获取各个设定时间段内下载媒体资源的数据量,并基于数据量和设定时间段的时长,分别确定各个设定时间段对应的第一实际下载速度,然后,基于各个第一实际下载速度,通过加权移动平均的方式,确定各个设定时间段对应的参考下载速度;最后基于参考下载速度,确定目标环境信息对应的第二实际下载速度。
在本申请实施例中,多个连续的设定时间段在同一个移动时间段内,基于多个连续的时间段,确定目标环境信息对应的第二实际下载速度,第二实际下载速度为该移动时间段对应的下载速度。
由于不同的设定时间段对应的下载速度不同,且可能存在较大的波动,若直接采用加权平均算法确定该移动时间段对应的下载速度,则导致确定的下载速度不够准确。为了保证准确性,本申请实施例中,确定目标环境信息对应的第二实际下载速度的过程中,引入加权移动平均算法。
具体的,针对每一个设定时间段,基于当前设定时间段对应的第一实际下载速度,和同一个移动时间段内的其他设定时间段对应的第一实际下载速度,采用加权移动平均算法,确定当前设定时间段对应的参考下载速度。
此时,给予当前设定时间段对应的第一实际下载速度,以及最接近当前设定时间段的其他设定时间段对应的第一实际下载速度相对较大的权重;给予远离当前设定时间段的其他设定时间段对应的第一实际下载速度相对较小的权重;并基于各个第一实际下载速度和相应的权重,确定当前设定时间段对应的参考下载速度;其中权重的总和为1。
下载速度单位采用KB/s,即每秒下载多少KB,为了保证第一实际下载速度的准确性,设设定时间段的时长为100ms,1s中包含有10个100ms,此时终端设备采集连续10个100ms内下载的数据量,并针对每个100ms内下载的数据量,确定每个100ms对应的第一实际下载速度,此时将获取10个第一实际下载速度;下面以第i个设定时间段为例,对确定第i个设定时间的参考下载速度进行说明:
针对第i个设定时间段,给予第i个设定时间段对应的第一实际下载速度的权重为0.2、给予与第i个设定时间段最接近的三个其他设定时间段对应的第一实际下载速度的权重均为0.12、给予与第i个设定时间段第二接近的两个其他设定时间段对应的第一实际下载速度的权重均为0.08、给予与第i个设定时间段第三接近的一个其他设定时间段对应的第一实际下载速度的权重为0.07、给予与第i个设定时间段第四接近的三个其他设定时间段对应的第一实际下载速度的权重均为0.03;之后基于各个第一实际下载速度和对应的权重,确定第一设定时间段对应的参考下载速度,即参考yi为第i个设定时间段对应的第一实际下载速度,xi为第i个设定时间段对应的第一实际下载速度的权重,n为10。
需要说明的是,上述权重数值的举例仅是举例说明,本申请实施例中可根据实际情况进行调整。
在确定各个设定时间段对应的参考下载速度后,将所有的参考下载速度进行简单的求平均处理,并将获取的平均值,作为目标环境信息对应的第二下载速度。
步骤S902,终端设备将获取的目标环境信息和第二实际下载速度整合成对应关系,并更新内存中预先存储的历史环境信息与历史下载速度集合的第一对应关系。
为了保证存储的准确性,尽量获取较全面的历史环境信息,比如历史环境信息包括:地理位置信息、wifi名称、IP、星期、时间点。此时,第一对应关系为,key:地理位置+wifi名称+ip+星期+时间点,value:第二实际下载速度。
在一种可能的实现方式中,为了不影响终端设备的运行效率,在终端设备中安插用于存储历史环境信息和历史下载速度集合的第一对应关系的外置内存卡,外置内存卡包括但不限于:安全数据存储卡(Secure Digital Memory Card,SD卡),快闪存储器卡(TransFlash,TF卡)。
在本申请实施例中,当终端设备中包含有外置内存卡时,在更新内存中预先存储的历史环境信息与历史下载速度集合的第一对应关系后,还会执行步骤S903。步骤S903,终端设备将内存中更新的历史环境信息与历史下载速度集合的第一对应关系,更新到外置内存卡中。
在更新的过程中,可以采用实时更新,也可以采用定时更新,在此不再赘述。
在本申请实施例中,当终端设备中安插有外置内存卡时,由于历史环境信息与历史下载速度集合的第一对应关系都存储在外置内存卡中,在使用过程中直接从外置内存卡中读取第一对应关系的话,处理时间较长。因此,为了进一步提高预测目标下载速度的预测效率,在启动媒体资源应用程序的时候,将外置内存卡中存储的历史环境信息和历史下载速度集合的第一对应关系,加载到内存中。
步骤S602,终端设备基于历史下载速度集合,预测目标环境信息对应的目标下载速度。
由于历史下载速度集合中包含的历史下载速度之间存在一定的差异,即历史下载速度集合中包含的历史下载速度是参差不齐的,为了保证预测的目标下载速度的准确性,终端设备在基于历史下载速度集合,预测目标环境信息对应的目标下载速度时,对历史下载速度集合中的历史下载速度进行聚类处理,使得历史下载速度集合中的数据更加平滑,且基于聚类处理后的历史下载速度集合确定的目标下载速度更加准确。
在本申请实施例中,主要通过k均值聚类算法对历史下载速度集合中的历史下载速度进行简单的聚合,即将历史下载速度集合中的历史下载速度分配到多个分组中,将历史下载速度对应的速度值接近的分到同一分组中,将历史下载速度对应的速度值相差较大的分到不同的分组中。请参考图10,图10示例性提供本申请实施例中一种对目标环境信息对应的历史下载速度集合中的来时下载速度进行聚类处理的示意图。
在将历史下载速度集合中的所有历史下载速度全部分配到相应的分组后,确定各个预设分组中,包含历史下载速度集合中的历史下载速度的数量;并筛选出包含历史下载速度的数量最多的预设类分组,并基于筛选出的预设分组对应的各个历史下载速度,预测目标下载速度。
在基于筛选出的预设分组对应的各个历史下载速度,预测目标下载速度的过程中,可以通过如下方式进行预测:
方式一:采用求平均值的方式,预测目标下载速度;即,将筛选出的预设分组中包含的各个历史下载速度进行加权移动平均处理,将加权移动平均处理后获得的数值作为预测的目标下载速度;
方式二:将筛选出的预设分组中包含的任一历史下载速度,作为预测的目标下载速度;
方式三:基于预设分组与下载速度的对应关系,确定筛选出的预设分组对应的下载速度,并将该下载速度作为预测的目标下载速度。
需要说明的是,上述方式仅是举例说明,任何可以基于筛选出的预设分组对应的各个历史下载速度,预测目标下载速度的方式都适用于本申请实施例。
在本申请实施例中,在预测目标下载速度后,终端设备检测目标环境信息对应的目标环境下的媒体资源应用程序的运行状态,并根据媒体资源应用程序的运行状态,确定目标下载速度的作用。
在上述内容中有提到媒体资源应用程序的运行状态包括第一播放状态和第二播放状态。
在一种可能的实现方式中,当目标环境信息对应的目标环境下的媒体资源应用程序的运行状态为第一播放状态时,终端设备根据预设的下载速度与码率的第二对应关系,获取所目标下载速度对应的目标码率,并在按照目标下载速度下载相应的媒体资源的过程,按照目标码率解码媒体资源。即,终端设备确定媒体资源应用程序处于启播状态时,根据预测的目标速度选择目标码率,并将目标码率作为启播码率,对下载的媒体资源进行解码处理。此时,终端设备可以针对启动码率进行选择,不同的网络环境,可以选择不同的启播码率,减少用户的缓冲。
需要说明的是,在第一播放状态下,终端设备采用http下载方式,从媒体资源应用程序对应的服务器中下载媒体资源。
在一种可能的实现方式中,当目标环境信息对应的目标环境下的媒体资源应用程序的运行状态为第二播放状态时,终端设备获取播放媒体资源时使用的实际码率;并基于播放媒体资源时使用的实际码率,确定媒体资源的目标播放量,以及基于目标下载速度,确定媒体资源的目标下载量;然后,基于目标下载量和目标播放量之间的关联关系,采用预设的处理策略,在下载媒体资源的过程中执行相应处理。
其中,预设的处理策略包括:调整缓冲区大小和确定下载媒体资源的下载方式中的至少一种。
通过下述情况,对基于目标下载量和目标播放量之间的关联关系,采用预设的处理策略,在下载媒体资源的过程中执行相应处理,进行说明:
情况一:预设的处理策略包括调整缓冲区大小。
当预设的处理策略包括调整缓冲区大小时,在确定目标下载量大于目标播放量后,在下载媒体资源的过程中,减小缓冲区大小;在确定目标下载量小于目标播放量后,在下载媒体资源的过程中,增加缓冲区大小;在确定目标下载量等于目标播放量,在下载媒体资源的过程中,保持当前缓冲区大小。通过提前预测下载速度大小,调整播放缓冲区大小,缩小下载区间,防止下载数据过多,用户直接退出,未观看,造成的带宽浪费;从而达到节省带宽,保障媒体资源应用程序播放媒体资源过程中的流畅度的目的。
具体的,在调整缓冲区大小的过程中,主要基于预先设定的目标下载量与目标播放量的之间的差值所处区间与增量之间的对应关系,调整缓冲区大小;比如,目标下载量大于目标播放量,且目标下载量与目标播放量之间的差值在第一区间内,则基于区间与增量之间的对应关系,查找第一区间对应的增量,并在当前缓冲区大小的基础上,减小增量对应的缓冲区大小,并获取减小后的缓冲区大小。
需要说明的是,上述调整的方式仅是举例说明,并不是本申请实施例中的唯一方式,本申请实施例中,还可以根据差值所处区间与缓冲区大小之间的对应关系,调整缓冲区大小。
情况二:预设的处理策略包括确定下载媒体资源的下载方式。
当预设的处理策略包括确定下载媒体资源的下载方式时,在确定目标下载量大于目标播放量后,在下载媒体资源的过程中,采用P2P下载方式下载媒体资源;在确定目标下载量小于目标播放量后,在下载媒体资源的过程中,采用http下载方式下载媒体资源;在确定目标下载量等于目标播放量,在下载媒体资源的过程中,保持当前下载方式;通过提前预测下载速度大小,减小http下载,使用P2P下载,P2P下载使用户可以直接连接到其他用户的终端设备进行媒体资源交换,无需连接到媒体资源应用程序对应的服务器去浏览与下载媒体资源;使得网络上的沟通变得容易、更直接共享和交互,真正地消除中间商,此时,下载的用户越多,速度越快,提高网络用户的网络利用率,用户所在的网络带宽将会被最大程度的使用,避免带宽浪费,减少带宽成本。
具体的,在确定下载媒体资源的下载方式的过程中,主要基于预先设定的目标下载量与目标播放量的倍数关系确定;比如,目标下载量大于目标播放量,且目标下载量为目标播放量的整数倍,且倍数达到设定阈值后,确定采用P2P下载方式下载媒体资源,确定目标下载量不能满足目标播放量后,确定采用http下载方式下载媒体资源。
需要说明的是,上述确定下载媒体资源的下载方式的具体方式仅是举例说明,并不是本申请实施例中的唯一方式。
在另一种可能的实现方式中,当目标环境信息对应的目标环境下的媒体资源应用程序的运行状态为第二播放状态时,终端设备设置为自适应码率播放时,根据预设的下载速度与码率的第二对应关系,获取所目标下载速度对应的目标码率,并在按照目标下载速度下载相应的媒体资源的过程,按照目标码率解码媒体资源。即,终端设备确定媒体资源应用程序处于实施播放过程时,根据预测的目标速度选择目标码率,并将目标码率作为当前播放视频的码率,对下载的媒体资源进行解码处理。
请参考图11,图11示例性提供了本申请实施例中一种终端设备下载速度预测的整体方法流程图,包括如下步骤:
步骤S1100,终端设备响应用户针对媒体资源应用程序触发的开启指令,启动媒体资源应用程序,使媒体资源应用程序处于运行状态;
步骤S1101,终端设备将外置内存卡中预先存储的历史环境信息与历史下载速度集合的第一对应关系,加载到内存中;
步骤S1102,终端设备在媒体资源应用程序的运行过程中,获取目标环境信息;
其中,目标环境信息包括使用媒体资源应用程序时的时间信息、地理位置信息和网络信息;
步骤S1103,终端设备基于目标环境信息,从第一对应关系中,确定与目标环境信息匹配的历史环境信息,并获取匹配的历史环境信息对应的历史下载速度集合,作为目标环境信息对应的历史下载速度集合;
步骤S1104,终端设备对历史下载速度集合中的历史下载速度进行聚类处理,预测目标环境信息对应的目标下载速度;
步骤S1105,终端设备检测媒体资源应用程序的运行过程,若运行过程为第一播放状态,则执行步骤S1106,若运行过程为第二播放状态,则执行步骤S1107;
步骤S1106,终端设备确定媒体资源应用程序的运行过程为第一播放状态,根据预设的下载速度与码率的第二对应关系,获取目标码率,并在按照目标下载速度下载相应的媒体资源的过程,按照目标码率解码媒体资源;
步骤S1107,终端设备确定媒体资源应用程序的运行过程为第二播放状态,在播放状态下,基于播放媒体资源时的实际码率和目标下载速度,调整缓冲区大小。
需要说明的是,本申请实施例中,以终端设备为执行主体对提供的一种下载速度预测方法进行说明仅是一种可能的实现方式;在另一种可能的实现方式中,还可以通过媒体资源应用程序对应的客户端为执行主体,来实现提供的下载速度预测方法,具体的实现方式中终端设备的实现方式类似,在此不再赘述。
在本申请实施例中,终端设备在媒体资源应用程序的运行过程中,获取目标环境信息;然后,基于目标环境信息,从预先存储的历史环境信息与历史下载速度集合的第一对应关系中,获取与目标环境信息匹配的历史环境信息对应的历史下载速度集合,每个历史下载速度表征:在历史环境信息下,使用媒体资源应用程序时的媒体资源下载速度;在获取历史下载速度集合后,基于历史下载速度集合,预测目标环境信息对应的目标下载速度。终端设备在预测下载速度集合的过程中,无需定期更新下载速度预测模型,而是基于自身存储的历史数据实时进行预测,提高预测效率;预测时仅参考自身生成的数据,并不存在其他终端设备生成的数据,提高了该终端设备运行媒体资源应用程序时预测下载速度的准确性,保障媒体资源应用程序运行的流畅度;且预测的下载速度更具有指向性,即该下载速度仅适用于该终端设备上的媒体资源应用程序,满足终端设备预测下载速度的个性化需求。
基于同一发明构思,本申请实施例还提供了一种下载速度预测装置1200,请参考图12,图12示例性提供了本申请实施例中一种下载速度预测装1200,该装置包括:
第一获取单元1201,用于在媒体资源应用程序的运行过程中,获取目标环境信息,其中,目标环境信息至少包含使用媒体资源应用程序时的网络状态;
第二获取单元1202,用于基于目标环境信息,从预先存储的历史环境信息与历史下载速度集合的第一对应关系中,获取目标环境信息对应的历史下载速度集合,其中,历史下载速度集合中的每个历史下载速度表征:在与目标环境信息匹配的历史环境信息下,使用媒体资源应用程序时的媒体资源下载速度;
预测单元1203,用于基于历史下载速度集合,预测目标环境信息对应的目标下载速度。
在一种可能的实现方式中,预测单元1203具体用于:
对历史下载速度集合中的历史下载速度进行聚类处理,确定各个预设分组中,包含历史下载速度集合中的历史下载速度的数量;
筛选出包含历史下载速度的数量最多的预设类分组,并基于筛选出的预设分组对应的各个下载速度,预测目标下载速度。
在一种可能的实现方式中,第一获取单元1201具体用于:在媒体资源应用程序处于第一播放状态时,获取目标环境信息,其中,第一播放状态为响应用户触发的播放指令时的状态;
预测单元1203还用于:根据预设的下载速度与码率的第二对应关系,获取目标下载速度对应的目标码率,并在按照目标下载速度下载相应的媒体资源的过程,按照目标码率解码媒体资源。
在一种可能的实现方式中,第一获取单元1201具体用于:在媒体资源应用程序处于第二播放状态时,获取目标环境信息,其中,第二播放状态为响应用户触发的播放指令后,响应用户触发的暂停指令前,播放媒体资源时的状态;
预测单元1203还用于:在第二播放状态下,获取播放媒体资源时使用的实际码率;
基于目标下载速度,确定媒体资源的目标下载量,以及基于实际码率,确定媒体资源的目标播放量;
基于目标下载量和目标播放量之间的关联关系,采用预设的处理策略,在下载媒体资源的过程中执行相应处理。
在一种可能的实现方式中,预测单元1203还用于:
确定预设的处理策略包括调整缓冲区大小;
若目标下载量大于目标播放量,则在下载媒体资源的过程中,减小缓冲区大小;
若目标下载量小于目标播放量,则在下载媒体资源的过程中,增加缓冲区大小。
在一种可能的实现方式中,预测单元1203还用于:
确定预设的处理策略包括确定下载媒体资源的下载方式;
若目标下载量大于目标播放量,则在下载媒体资源的过程中,采用点对点下载方式下载媒体资源;
若目标下载量小于目标播放量,则在下载媒体资源的过程中,采用超文本传输协议下载方式下载媒体资源。
在一种可能的实现方式中,第一获取单元1201具体用于:在媒体资源应用程序处于第二播放状态时,获取目标环境信息,其中,第二播放状态为响应用户触发的播放指令后,响应用户触发的暂停指令前,播放媒体资源时的状态;
预测单元1203还用于:根据预设的下载速度与码率的第二对应关系,将播放状态下使用的码率,调整为目标下载速度对应的目标码率,并按照目标码率解码媒体资源。
在一种可能的实现方式中,目标环境信息还包含:
使用媒体资源应用程序时,通过系统应用程序接口获取的时间点、星期以及地理位置信息中的至少一种。
在一种可能的实现方式中,通过如下方式更新预先存储的历史环境信息与历史下载速度集合的第一对应关系:
在目标环境信息对应的目标环境下,在多个连续的设定时间段内,获取各个设定时间段内下载媒体资源的数据量,并基于数据量和设定时间段的时长,分别确定各个设定时间段对应的第一实际下载速度;
针对各个设定时间段中的一个设定时间段执行:基于各个第一实际下载速度,通过加权移动平均的方式,确定一个设定时间段对应的参考下载速度;
基于各个参考下载速度的平均下载速度,确定目标环境信息对应的第二实际下载速度;
根据目标环境信息和第二实际下载速度的对应关系,更新预先存储的历史环境信息与历史下载速度集合的第一对应关系。
为了描述的方便,以上各子模型按照功能划分为各单元(或模块)分别描述。当然,在实施本申请时可以把各单元(或模块)的功能在同每个或多个软件或硬件中实现。
在介绍了本申请示例性实施方式的下载速度预测方法及装置后,接下来介绍本申请的另一示例性实施方式的下载速度预测计算设备。
所属技术领域的技术人员能够理解,本申请的各个方面可以实现为系统、方法或程序产品。因此,本申请的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
在一种可能的实现方式中,本申请实施例提供的评论信息生成计算设备可以至少包括处理器和存储器。其中,存储器存储有程序代码,当程序代码被处理器执行时,使得处理器执行本申请中各种示例性实施方式的评论信息生成方法中的每个步骤。
下面参照图13来描述根据本申请的这种实施方式的评论信息生成计算设备1300。如图13的评论信息生成计算设备1300仅仅是每个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图13所示,计算设备1300的子模型可以包括但不限于:上述至少每个处理器1301、上述至少每个存储器1302、连接不同系统子模型(包括存储器1302和处理器1301)的总线1303。
总线1303表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、外围总线、处理器或者使用多种总线结构中的任意总线结构的局域总线。
存储器1302可以包括易失性存储器形式的可读介质,例如随机存取存储器(RAM)13021和/或高速缓存存储器13022,还可以进一步包括只读存储器(ROM)13023。
存储器1302还可以包括具有一组(至少每个)程序模块13024的程序/实用工具13025,这样的程序模块13024包括但不限于:操作系统、每个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每每个或某种组合中可能包括网络环境的实现。
计算设备1300也可以与每个或多个外部设备1304(例如键盘、指向设备等)通信,还可与每个或者多个使得用户能与计算设备1300交互的设备通信,和/或与使得该计算设备1300能与每个或多个其它计算装置进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口1305进行。并且,计算设备1300还可以通过网络适配器1306与每个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图13所示,网络适配器1306通过总线1303与用于计算设备1300的其它模块通信。应当理解,尽管图13中未示出,可以结合计算设备1300使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
在一些可能的实施方式中,本申请提供的下载速度预测方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在计算机设备上运行时,程序代码用于使计算机设备执行本说明书上述描述的根据本申请各种示例性实施方式的下载速度预测方法中的步骤。
程序产品可以采用每个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有每个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本申请的实施方式的短信息的发送控制的程序产品可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在计算装置上运行。
可读信号介质可以包括在基带中或者作为载波一子模型传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由命令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本申请操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。
应当注意,尽管在上文详细描述中提及了装置的若干单元或子单元,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本申请的实施方式,上文描述的两种或更多单元的特征向量和功能可以在每个单元中具体化。反之,上文描述的每个单元的特征向量和功能可以进一步划分为由多个单元来具体化。
此外,尽管在附图中以特定顺序描述了本申请方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为每个步骤执行,和/或将每个步骤分解为多个步骤执行。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种下载速度预测方法,其特征在于,该方法包括:
在媒体资源应用程序的运行过程中,获取目标环境信息,其中,所述目标环境信息至少包含使用所述媒体资源应用程序时的网络状态;
基于所述目标环境信息,从预先存储的历史环境信息与历史下载速度集合的第一对应关系中,获取所述目标环境信息对应的历史下载速度集合,其中,所述历史下载速度集合中每个历史下载速度表征:在与所述目标环境信息匹配的历史环境信息下,使用所述媒体资源应用程序时的媒体资源下载速度;
基于所述历史下载速度集合,预测所述目标环境信息对应的目标下载速度。
2.如权利要求1所述的方法,其特征在于,所述基于所述历史下载速度集合,预测所述目标环境信息对应的目标下载速度,包括:
对所述历史下载速度集合中的历史下载速度进行聚类处理,确定各个预设分组中,包含所述历史下载速度集合中的历史下载速度的数量;
筛选出包含所述历史下载速度的数量最多的预设类分组,并基于筛选出的预设分组对应的各个下载速度,预测所述目标下载速度。
3.如权利要求1所述的方法,其特征在于,所述在媒体资源应用程序的运行过程中,获取目标环境信息,包括:
在所述媒体资源应用程序处于第一播放状态时,获取所述目标环境信息,其中,所述第一播放状态为响应用户触发的播放指令时的状态;
所述预测所述目标环境信息对应的目标下载速度后,还包括:
根据预设的下载速度与码率的第二对应关系,获取所述目标下载速度对应的目标码率,并在按照所述目标下载速度下载相应的媒体资源的过程,按照所述目标码率解码所述媒体资源。
4.如权利要求1所述的方法,其特征在于,所述在媒体资源应用程序的运行过程中,获取目标环境信息,包括:
在所述媒体资源应用程序处于第二播放状态时,获取所述目标环境信息,其中,所述第二播放状态为响应用户触发的播放指令后,响应用户触发的暂停指令前,播放媒体资源时的状态;
所述预测所述目标环境信息对应的目标下载速度后,还包括:
在所述第二播放状态下,获取播放所述媒体资源时使用的实际码率;
基于所述目标下载速度,确定所述媒体资源的目标下载量,以及基于所述实际码率,确定所述媒体资源的目标播放量;
基于所述目标下载量和所述目标播放量之间的关联关系,采用预设的处理策略,在下载所述媒体资源的过程中执行相应处理。
5.如权利要求4所述的方法,其特征在于,所述基于所述目标下载量和所述目标播放量之间的关联关系,采用预设的处理策略,在下载所述媒体资源的过程中执行相应处理,包括:
确定所述预设的处理策略包括调整缓冲区大小;
若所述目标下载量大于所述目标播放量,则在下载所述媒体资源的过程中,减小缓冲区大小;
若所述目标下载量小于所述目标播放量,则在下载所述媒体资源的过程中,增加缓冲区大小。
6.如权利要求4所述的方法,其特征在于,所述基于所述目标下载量和所述目标播放量之间的关联关系,采用预设的处理策略,在下载所述媒体资源的过程中执行相应处理,包括:
确定所述预设的处理策略包括确定下载所述媒体资源的下载方式;
若所述目标下载量大于所述目标播放量,则在下载所述媒体资源的过程中,采用点对点下载方式下载所述媒体资源;
若所述目标下载量小于所述目标播放量,则在下载所述媒体资源的过程中,采用超文本传输协议下载方式下载所述媒体资源。
7.如权利要求1所述的方法,其特征在于,所述在媒体资源应用程序的运行过程中,获取目标环境信息,包括:
在所述媒体资源应用程序处于第二播放状态时,获取所述目标环境信息,其中,所述第二播放状态为响应用户触发的播放指令后,响应用户触发的暂停指令前,播放媒体资源时的状态;
所述预测所述目标环境信息对应的目标下载速度后,还包括:
根据所述预设的下载速度与码率的第二对应关系,将所述播放状态下使用的码率,调整为所述目标下载速度对应的目标码率,并按照所述目标码率解码所述媒体资源。
8.如权利要求1所述的方法,其特征在于,所述目标环境信息还包含:
使用所述媒体资源应用程序时,通过系统应用程序接口获取的时间点、星期以及地理位置信息中的至少一种。
9.如权利要求1~8任一所述的方法,其特征在于,通过如下方式更新所述预先存储的历史环境信息与历史下载速度集合的第一对应关系:
在所述目标环境信息对应的目标环境下,在多个连续的设定时间段内,获取各个设定时间段内下载媒体资源的数据量,并基于所述数据量和所述设定时间段的时长,分别确定所述各个设定时间段对应的第一实际下载速度;
针对各个设定时间段中的一个设定时间段执行:基于各个第一实际下载速度,通过加权移动平均的方式,确定所述一个设定时间段对应的参考下载速度;
基于各个参考下载速度的平均下载速度,确定所述目标环境信息对应的第二实际下载速度;
根据所述目标环境信息和所述第二实际下载速度的对应关系,更新预先存储的历史环境信息与历史下载速度集合的第一对应关系。
10.一种下载速度预测装置,其特征在于,该装置包括:
第一获取单元,用于在媒体资源应用程序的运行过程中,获取目标环境信息,其中,所述目标环境信息至少包含使用所述媒体资源应用程序时的网络状态;
第二获取单元,用于基于所述目标环境信息,从预先存储的历史环境信息与历史下载速度集合的第一对应关系中,获取所述目标环境信息对应的历史下载速度集合,其中,所述历史下载速度集合中每个历史下载速度表征:在与所述目标环境信息匹配的历史环境信息下,使用所述媒体资源应用程序时的媒体资源下载速度;
预测单元,用于基于所述历史下载速度集合,预测所述目标环境信息对应的目标下载速度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110515853.9A CN113765993B (zh) | 2021-05-12 | 2021-05-12 | 一种下载速度预测方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110515853.9A CN113765993B (zh) | 2021-05-12 | 2021-05-12 | 一种下载速度预测方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113765993A true CN113765993A (zh) | 2021-12-07 |
CN113765993B CN113765993B (zh) | 2024-05-07 |
Family
ID=78787048
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110515853.9A Active CN113765993B (zh) | 2021-05-12 | 2021-05-12 | 一种下载速度预测方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113765993B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113055745A (zh) * | 2021-03-30 | 2021-06-29 | 脸萌有限公司 | 视频播放的处理方法、装置、设备及存储介质 |
CN114786055A (zh) * | 2022-04-15 | 2022-07-22 | 北京字节跳动网络技术有限公司 | 一种预加载方法、装置、电子设备及介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030074379A1 (en) * | 2001-10-11 | 2003-04-17 | International Business Machines Corporation | Apparatus and method of predicting file download time based on historical data |
KR100782875B1 (ko) * | 2007-06-04 | 2007-12-06 | 주식회사 셀런 | 주문형 비디오 서비스에서 컨텐츠의 재생 중 끊김을방지하는 방법 및 이를 위한 셋톱박스 |
CN111277870A (zh) * | 2020-03-05 | 2020-06-12 | 广州市百果园信息技术有限公司 | 带宽预测方法、装置、服务器及存储介质 |
CN111404773A (zh) * | 2020-03-10 | 2020-07-10 | 深信服科技股份有限公司 | 一种网络质量监测方法、装置及电子设备和存储介质 |
CN111417000A (zh) * | 2020-03-27 | 2020-07-14 | 北京奇艺世纪科技有限公司 | 一种切换视频码率的方法、装置、电子设备及介质 |
CN111641959A (zh) * | 2020-04-10 | 2020-09-08 | 北京奇艺世纪科技有限公司 | 一种网络环境信息的检测方法和装置 |
-
2021
- 2021-05-12 CN CN202110515853.9A patent/CN113765993B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030074379A1 (en) * | 2001-10-11 | 2003-04-17 | International Business Machines Corporation | Apparatus and method of predicting file download time based on historical data |
KR100782875B1 (ko) * | 2007-06-04 | 2007-12-06 | 주식회사 셀런 | 주문형 비디오 서비스에서 컨텐츠의 재생 중 끊김을방지하는 방법 및 이를 위한 셋톱박스 |
CN111277870A (zh) * | 2020-03-05 | 2020-06-12 | 广州市百果园信息技术有限公司 | 带宽预测方法、装置、服务器及存储介质 |
CN111404773A (zh) * | 2020-03-10 | 2020-07-10 | 深信服科技股份有限公司 | 一种网络质量监测方法、装置及电子设备和存储介质 |
CN111417000A (zh) * | 2020-03-27 | 2020-07-14 | 北京奇艺世纪科技有限公司 | 一种切换视频码率的方法、装置、电子设备及介质 |
CN111641959A (zh) * | 2020-04-10 | 2020-09-08 | 北京奇艺世纪科技有限公司 | 一种网络环境信息的检测方法和装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113055745A (zh) * | 2021-03-30 | 2021-06-29 | 脸萌有限公司 | 视频播放的处理方法、装置、设备及存储介质 |
CN113055745B (zh) * | 2021-03-30 | 2023-05-16 | 脸萌有限公司 | 视频播放的处理方法、装置、设备及存储介质 |
CN114786055A (zh) * | 2022-04-15 | 2022-07-22 | 北京字节跳动网络技术有限公司 | 一种预加载方法、装置、电子设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113765993B (zh) | 2024-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108763494B (zh) | 对话系统间的知识分享方法、对话方法及装置 | |
CN113765993B (zh) | 一种下载速度预测方法、装置及存储介质 | |
CN111405030B (zh) | 一种消息推送方法、装置、电子设备和存储介质 | |
CN111340221A (zh) | 神经网络结构的采样方法和装置 | |
US20120142319A1 (en) | Systems and methods for joint analytics on user level and network level data of a communications network | |
CN112650841A (zh) | 信息处理方法、装置和电子设备 | |
CN111935025B (zh) | 一种tcp传输性能的控制方法、装置、设备和介质 | |
US20220368744A1 (en) | System and method for dynamic manipulation of content presentation | |
JP2022544507A (ja) | 対話勧誘を管理するためのシステムおよび方法 | |
CN113440864A (zh) | 直播指示信息推荐方法、装置、设备及存储介质 | |
CN114389959B (zh) | 网络拥塞控制方法、装置、电子设备及存储介质 | |
US20200084255A1 (en) | Dynamic Prediction Techniques for Interactive Content Streaming | |
CN108111591B (zh) | 推送消息的方法、装置及计算机可读存储介质 | |
CN112152879B (zh) | 网络质量确定方法、装置、电子设备和可读存储介质 | |
CN112437105A (zh) | 用于实时流数据中的间断的基于人工智能的外推模型 | |
US11962668B2 (en) | Caching method, device, and computer program product for edge server | |
CN111046156A (zh) | 奖励数据的确定方法、装置和服务器 | |
US20230128597A1 (en) | Method, device, and computer program product for scheduling tour guiding resources | |
CN113240323B (zh) | 基于机器学习的水平评测方法、装置及相关设备 | |
CN115087042A (zh) | 5g专网数据分流方法、装置、设备及存储介质 | |
CN114118435A (zh) | 基于迁移学习的时序模型训练方法和用于时序预测的方法 | |
CN114885215B (zh) | 码率自适应模型的训练、视频码率自适应方法及装置 | |
CN115134639B (zh) | 视频档位确定方法、装置、服务器、存储介质和系统 | |
CN116545877B (zh) | 跨域sfc动态部署方法、装置、计算机设备及存储介质 | |
CN112911620B (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 |