CN115811631A - 视频播放的控制方法、装置、电子装置和存储介质 - Google Patents
视频播放的控制方法、装置、电子装置和存储介质 Download PDFInfo
- Publication number
- CN115811631A CN115811631A CN202211046180.8A CN202211046180A CN115811631A CN 115811631 A CN115811631 A CN 115811631A CN 202211046180 A CN202211046180 A CN 202211046180A CN 115811631 A CN115811631 A CN 115811631A
- Authority
- CN
- China
- Prior art keywords
- data
- fragment
- information
- request
- video
- 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
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本申请涉及一种视频播放的控制方法、装置、电子装置和存储介质,该方法包括:获取请求方请求获取当前视频的第一请求,根据第一请求中携带的索引信息,从预设的数据缓存单元中获取当前视频,索引信息记录当前视频对应的至少一个数据分片的分片信息;在请求方播放所接收到的当前视频时,根据从索引信息中检测到的参考分片信息,确定目标分片信息,参考分片信息为当前视频对应的至少一个数据分片中最后一个数据分片所对应的分片信息;基于目标分片信息,从预设的网络服务端下载与目标分片信息对应的目标分片,并将目标分片预加载至数据缓存单元。通过本申请,解决了电视设备上在线视频播放启播慢、播放过程频繁卡顿的问题。
Description
技术领域
本申请涉及数字电视技术领域,尤其涉及一种视频播放的控制方法、装置、电子装置和存储介质。
背景技术
随着互联网技术的发展以及网络电视的普及,在电视上进行在线视频播放已成为电视的主要用途之一。但相关技术中的在线网络视频播放,由于网络不稳定、电视设备性能较差等因素,经常会出现视频播放启播慢、频繁卡顿等情况,影响了用户的使用体验。
相关技术中,常常采用对网络服务端进行优化,籍以期望解决电视在线视频播放启播慢、视频播放过程中频繁卡顿的问题,例如:在线视频网络分发、视频专线网络等,该方式对视频的卡顿问题有一定缓解,但因家庭网络复杂、上网设备众多,仍然会出现网络波动不稳定、其它设备和电视抢占网络的情况,用户体验不佳,上述问题不没很好解决;相关技术中,还会采用对网络环境进行优化,例如:更换网络设备、开通网络提速服务,但采用此方式,会增加用户观看成本,适用性不强。
针对相关技术中电视在线视频播放启播慢、视频播放过程中频繁卡顿的问题,尚未存在有效的解决方案。
发明内容
本申请提供了一种视频播放的控制方法、装置、电子装置和存储介质,以至少解决相关技术中电视在线视频播放启播慢、视频播放过程中频繁卡顿的问题。
第一方面,本申请提供了一种视频播放的控制方法,包括:获取请求方请求获取当前视频的第一请求,并根据所述第一请求中携带的索引信息,从预设的数据缓存单元中获取所述当前视频,其中,所述索引信息记录所述当前视频对应的至少一个数据分片的分片信息,所述分片信息用于表征对应的所述数据分片的播放时间及请求地址;在所述请求方播放所接收到的所述当前视频时,根据从所述索引信息中检测到的参考分片信息,确定目标分片信息,其中,所述参考分片信息为所述当前视频对应的至少一个数据分片中最后一个数据分片所对应的所述分片信息;基于所述目标分片信息,从预设的网络服务端下载与所述目标分片信息对应的目标分片,并将所述目标分片预加载至所述数据缓存单元。
第二方面,本申请提供了一种视频播放的控制装置,包括:
获取模块,用于获取请求方请求获取当前视频的第一请求,并根据所述第一请求中携带的索引信息,从预设的数据缓存单元中获取所述当前视频,其中,所述索引信息记录所述当前视频对应的至少一个数据分片的分片信息,所述分片信息用于表征对应的所述数据分片的播放时间及请求地址;
确定模块,用于在所述请求方播放所接收到的所述当前视频时,根据从所述索引信息中检测到的参考分片信息,确定目标分片信息,其中,所述参考分片信息为所述当前视频对应的至少一个数据分片中最后一个数据分片所对应的所述分片信息;
处理模块,用于基于所述目标分片信息,从预设的网络服务端下载与所述目标分片信息对应的目标分片,并将所述目标分片预加载至所述数据缓存单元。
第三方面,提供了一种电子装置,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现第一方面任一项实施例所述的视频播放的控制方法的步骤。
第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面任一项实施例所述的视频播放的控制方法的步骤。
与相关技术相比,本实施例中提供了视频播放的控制方法、装置、电子装置和存储介质,采用获取请求方请求获取当前视频的第一请求,并根据所述第一请求中携带的索引信息,从预设的数据缓存单元中获取所述当前视频,其中,所述索引信息记录所述当前视频对应的至少一个数据分片的分片信息,所述分片信息用于表征对应的所述数据分片的播放时间及请求地址;在所述请求方播放所接收到的所述当前视频时,根据从所述索引信息中检测到的参考分片信息,确定目标分片信息,其中,所述参考分片信息为所述当前视频对应的至少一个数据分片中最后一个数据分片所对应的所述分片信息;基于所述目标分片信息,从预设的网络服务端下载与所述目标分片信息对应的目标分片,并将所述目标分片预加载至所述数据缓存单元,解决了相关技术中电视设备上在线视频播放启播慢、播放过程频繁卡顿的问题,实现节省网络流量资源,加速在线视频播放,提升在线视频的播放速度和用户体验的有益效果。
本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的视频播放的控制方法的流程示意图;
图2是实施本申请优选实施例的视频播放的控制方法的播放器、本地视频代理实体及网络服务端的框架示意图;
图3是本申请优选实施例的视频播放的控制方法的流程示意图;
图4是本申请优选实施例执行视频播放及预加载时的时序示意图一;
图5是本申请优选实施例执行视频播放及预加载时的时序示意图二;
图6是本申请优选实施例执行预加载时的效果示意图;
图7是本申请实施例提供的视频播放的控制装置的结构框图;
图8是本申请实施例的电子装置的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
图1为本申请实施例提供的视频播放的控制方法的流程示意图。如图1所示,本申请实施例提供了一种视频播放的控制方法,该方法包括如下步骤:
步骤S101,获取请求方请求获取当前视频的第一请求,并根据第一请求中携带的索引信息,从预设的数据缓存单元中获取当前视频,其中,索引信息记录当前视频对应的至少一个数据分片的分片信息,分片信息用于表征对应的数据分片的播放时间及请求地址。
在本实施例中,执行本实施例中的视频播放的控制方法的执行主体为在播放器和在线视频网络服务端之间设置的本地视频代理实体;同时,在本实施例中,通过该执行主体对请求方(播放器)请求获取在线视频数据进行分析和缓存,保证当前视频流畅播放的同时,还利用当前视频播放的时间对接下来需要播放的视频数据在后台静默预加载缓存。
在本实施例中,在执行主体获取到请求方获取当前视频的第一请求后,会根据第一请求所携带的索引信息(包括对应的数据分片的请求地址信息和播放时间)去预设的数据缓存单元获取缓存的视频数据,并在返回给请求方后,由请求方加载处理所请求的视频数据,以完成闭环播放,并在开始播放之后,执行对接下来需要播放的视频数据在后台静默预加载缓存;在本实施例中,请求方所请求的视频数据在预设的数据缓存单元中是按对应的数据分片进行缓存的,例如:设定播放时间为0-10秒的视频数据为数据分片a,11-20秒的视频数据为数据分片b,当第一请求对应的索引信息表面请求方所请求的视频数据为5-9秒的视频数据,则表示当前所请求的当前视频为数据分片a;在其中一些实施方式中,当请求方所请求的播放时间为跨数据分片的播放时间点的情况时,例如:请求播放8-15秒的视频数据,本地视频代理会将对应的请求处理为两个请求,也就是将该请求处理为请求方进行了两次不同请求,并分别请求获取数据分片a和数据分片b;当然,对于不同的视频格式的视频数据,存在对应的视频格式的视频数据支持跨数据分片获取视频数据,例如:MP4格式(全称MPEG-4Part 14),但在对数据分片进行缓存及预加载时,本实施例还是采用按数据分片的方式进行缓存及预加载,此时,对应格式的视频数据的获取则按其所支持的方式进行,不申请实施例不作限定。
在本实施例中,每一个播放视频的请求(例如:第一请求)对应其唯一的一份按数据分片形式存在的内存缓存数据或磁盘缓存数据,通过对应请求中的请求地址就可以唯一标识确定不同的请求;而考虑到同一设备下的同一个视频播放数据,可能存在不同在线视频内容资源服务方式,例如:传统视频服务,内容分发网络(Content Delivery Network,简称CDN)视频内容资源服务、P2P内容分发网络(P2P Content Delivery Network,简称PCDN)视频内容资源服务,在不同内容资源服务环境下,同一视频对应的请求中的请求地址往往不同,会带上对应的前后缀信息以进行区分标识。
步骤S102,在请求方播放所接收到的当前视频时,根据从索引信息中检测到的参考分片信息,确定目标分片信息,其中,参考分片信息为当前视频对应的至少一个数据分片中最后一个数据分片所对应的分片信息。
在本实施例中,在获取到请求方所请求的当前视频后,会将当前视频返回给请求方,并在请求方开始播放当前视频后,执行对接下来需要播放的视频数据进行预加载的过程,例如:当前播放的是0-10秒的数据分片的视频数据,在请求方播放当前视频之后,则对接下来需要播放的1-20秒的数据分片进行预加载;因视频是按照时间点或片段顺序进行播放的,因此,为实现确定预加载的视频数据的位置,则需要先确定当前视频的位置,该位置是通过第一请求对应的索引信息携带的当前视频播放的时间点或片段索引位置信息判断出的,在判断出当前视频播放的时间点或片段索引位置信息之后,下一个时间点或下一个片段(对应的数据分片)就是播放器接下来将顺序播放的视频数据,也是需要进行预加载下载缓存的视频数据,在其中一些可选实施方式中,可以同时一次考虑预加载同顺序情况下的多个视频数据;在本实施例中,在根据当前视频的播放位置确定预加载的视频数据的位置的过程中,采用确定当前视频对应的至少一个数据分片中最后一个数据分片的分片信息,并以该分片信息为参考分片信息,确定对应的目标分片信息,籍以通过对应的分片信息实现先确定最后一个数据分片,然后确定最后一个数据分片对应的下一个数据分片,进而确定需要进行预加载下载缓存的视频数据。
步骤S103,基于目标分片信息,从预设的网络服务端下载与目标分片信息对应的目标分片,并将目标分片预加载至数据缓存单元。
在本实施例中,在确定好需要预加载下载缓存的视频数据之后,则可在当前视频播放时间内,从预设的网络服务端下载对应的目标分片,并将目标分片预加载至数据缓存单元。
通过上述步骤S101至步骤S103,采用获取请求方请求获取当前视频的第一请求,并根据第一请求中携带的索引信息,从预设的数据缓存单元中获取当前视频,其中,索引信息记录当前视频对应的至少一个数据分片的分片信息,分片信息用于表征对应的数据分片的播放时间及请求地址;在请求方播放所接收到的当前视频时,根据从索引信息中检测到的参考分片信息,确定目标分片信息,其中,参考分片信息为当前视频对应的至少一个数据分片中最后一个数据分片所对应的分片信息;基于目标分片信息,从预设的网络服务端下载与目标分片信息对应的目标分片,并将目标分片预加载至数据缓存单元,解决了相关技术中电视设备上在线视频播放启播慢、播放过程频繁卡顿的问题,实现节省网络流量资源,加速在线视频播放,提升在线视频的播放速度和用户体验的有益效果。
需要说明的是,本申请实施例的视频播放的控制方法采用在视频播放软件层进行优化,通过本地视频代理的方式进行播放器视频数据的预加载处理,达到视频加速播放的目的;在本实施例中,通过在播放器和预设的网络视频服务端之间,建立一个本地视频代理的中间拦截层,对请求的视频数据进行分析和缓存,在保证当前视频流畅播放的同时,利用空闲时间对下一个需要播放的视频数据进行预加载下载缓存处理,使的下一个待播放的视频数据能直接从预设的数据缓存单元已缓存的视频数据中读取并返回,节省网络资源下载过程所造成的耗时,提高播放器的启播速度;同时,利用空闲时间提前预加载数据,能够在网络不稳定的情况下,也能够保持在后台一直进行下载处理,填补了更多的下载数据的时间,减少了播放过程中出现卡顿的次数;再者,通过采用本地视频代理实体在中间进行拦截处理的方式,能够有效隔离播放器数据获取和数据播放之间所带来的干扰,有效地对播放数据进行解耦,降低了软件的复杂性;还可以实现在播放器端和在线视频服务端不作改动的情况下,实现不同播放器内核架构(系统内核、自研内核、第三方内核等)、不同在线视频内容资源服务方式(如传统视频服务,CDN视频内容资源服务、PCDN视频内容资源服务等)的无缝切换及完美兼容,提升了软件的兼容性和适配性。
需要进一步说明的是,在本申请实施例中,通过设计对应预加载下载缓存机制,能够有效地提升下载缓存视频资源的使用率,在保证视频流畅播放的同时,最新请求播放的视频数据能够第一时间进行下载缓存处理。
在其中一些实施例中,分片信息至少记录对应的数据分片的播放时间段,根据从索引信息中检测到的参考分片信息,确定目标分片信息,通过如下步骤实现:
步骤21、确定参考分片信息所对应的播放时间段。
在本实施例中,在当前视频仅仅包含一个数据分片时,参考分片信息所对应的数据分片即为当前视频本身;在当前视频包括多个数据分片时,也就是本地视频代理实体将请求方对应的请求按多次请求的方式进行处理,并返回给请求方多个数据分片,则将最后一个数据分片作为参考分片信息所对应的数据分片;同时,通过确定参考分片信息对应的播放时间段,籍以确定当前视频播放结束的时间点,以及基于当前视频播放结束的时间点确定下一个数据分片对应的播放时间端。
步骤21、选取参考分片信息所对应的播放时间段的下一个播放时间段,得到目标播放时间段,其中,目标分片信息所对应的播放时间段包括下一个播放时间段。
通过上述步骤中的确定参考分片信息所对应的播放时间段;选取参考分片信息所对应的播放时间段的下一个播放时间段,得到目标播放时间段,其中,目标分片信息所对应的播放时间段包括下一个播放时间段,实现通过对应的分片信息实现先确定最后一个数据分片,然后确定最后一个数据分片对应的下一个数据分片,进而确定需要进行预加载下载缓存的视频数据,进而快速确定播放器下一个需要播放的视频数据,实现视频数据获取加速,提升用户的播放体验效果。
在其中一些实施例中,基于目标分片信息,从预设的网络服务端下载与目标分片信息对应的目标分片,通过如下步骤实现:
步骤31、确定目标分片信息所对应的播放时间段的开始时间和结束时间。
在本实施例中,开始时间为当前视频播放结束时间点的下一个时间点,而结束时间则是间距开始时间预设时长的一个时间点,例如:开始时间对应的时间点为第11秒,则结束时间点对应的时间点为20秒,开始时间和结束时间之前的时间差是基于预设规则设定的,也就是每个数据分片对应的播放时间段的时长是预设且统一的。
步骤32、从预设的网络服务端,下载包括与开始时间对应的起始帧到与结束时间对应的结束帧之间对应的视频帧,确定目标分片包括起始帧到结束帧之间对应的视频帧。
在本实施例中,因视频是按照时间点或片段顺序进行播放的,在确定当前视频的位置后,可以根据当前视频的位置判断出下一个数据分片对应的时间点或片段索引位置信息,进而可以从预设的网络服务端下载该下一个数据分片,实现是目标分片的获取,加速视频数据的获取。
在其中一些实施例中,将目标分片预加载至数据缓存单元,包括如下步骤:
步骤41、在将目标分片缓存至数据缓存单元中的磁盘缓存单元后,判断是否进行内存缓存。
步骤42、在判断到需要进行内存缓存的情况下,从缓存至磁盘缓存单元的目标分片缓存至数据缓存单元中的内存缓存单元。
在本实施例中,将目标分片预加载至数据缓存单元,是指将目标分片缓存至磁盘缓存单元,同时,还会根据需要,确定是否进行内存缓存;具体地,当需要预加载磁盘缓存数据时,则在从网络服务端获取到目标分片之后,将目标分片进行磁盘缓存,同时,判断是否需要进行内存缓存,如果需要,预加载内存缓存数据,则从磁盘缓存中获取缓存的目标分片,进行内存缓存处理。
通过上述步骤中的在将目标分片缓存至数据缓存单元中的磁盘缓存单元后,判断是否进行内存缓存,在判断到需要进行内存缓存的情况下,从缓存至磁盘缓存单元的目标分片缓存至数据缓存单元中的内存缓存单元,实现将目标分片预加载至数据缓存单元,使的请求方接下来需要请求的视频数据能直接从数据缓存单元获取,加速视频播放处理,提升用户的播放体验效果。
在本实施例中,还对设定的缓存方式进行分类,并通过不同的缓存算法处理缓存,在本实施例中,所有预加载的视频数据都下载并缓存到磁盘中,对应的缓存类别包括:磁盘级缓存和内存级缓存;其中,磁盘级缓存是通用缓存,在本实施例中,还会基于视频数据的数据信息,使的缓存的视频数据或数据分片尽可能避免出现单个过长视频数据、文件大小过大视频数据,籍以提升磁盘缓存的有效利用率。在本实施例中,对应的缓存算法包括LRU算法和优先级算法,其中,LRU算法,也叫最近最少使用算法,通过采用LRU算法,使的在磁盘缓存中,优先保存最新请求视频数据,优先删除最少使用或最久未用的视频数据;优先级算法,在LRU算法之上,对于视频数据进行进一步的优先级划分,如视频播放的第一帧数据,会优先需要保存,避免启播黑屏,提升启播体验;如对于m3u8封装格式视频,每次播放都需要解析m3u8文件,因此,m3u8文件的数据优先级要比普通视频数据优先级高;如对于加密视频,加密的密钥每次播放都需要加载,因此其数据优先级比普通视频数据高;同时,通过对视频数据的优先级标记,重要的数据标记更高的优先级并占有更大的缓存权重,能够极大地提高数据的缓存使用率。
在其中一些实施例中,根据第一请求中携带的索引信息,从预设的数据缓存单元中获取当前视频,包括如下步骤:
步骤51、根据索引信息所记录的数据分片的分片信息,在数据缓存单元中查找对应的数据分片,并确定查找结果,其中,数据缓存单元包括内存缓存单元和磁盘缓存单元。
步骤52、在查找结果为内存缓存单元和磁盘缓存单元其中之一缓存对应的数据分片时,确定从预设的数据缓存单元中获取当前视频。
通过上述步骤中根据索引信息所记录的数据分片的分片信息,在数据缓存单元中查找对应的数据分片,并确定查找结果,其中,数据缓存单元包括内存缓存单元和磁盘缓存单元,在查找结果为内存缓存单元和磁盘缓存单元其中之一缓存对应的数据分片时,确定从预设的数据缓存单元中获取当前视频,实现从数据缓存单元获取请求方所请求的当前视频,加速视频数据的获取,提高数据加载速率。
需要说明的是,在本实施例中,在接收到请求方请求获取当前视频的第一请求后,会在内存缓存单元中查找是否有其对应的内存缓存数据,也就是查找内存缓存单元内是否具有对应的数据分片,如果有,可直接返回数据分片给请求方,请求方加载处理对应的数据分片,完成播放闭环;如果没有内存缓存数据,则在磁盘缓存单元中查找是否有其对应的磁盘缓存数据,也就是查找磁盘缓存单元内是否具有对应的数据分片,如果有,同样,直接返回数据分片给请求方,以使请求方加载处理对应的数据分片或视频数据,完成播放闭环;在本实施例中,只要内存缓存单元和磁盘缓存单元其中之一缓存对应的数据分片,则表明可以从预设的数据缓存单元中获取当前视频,当然,因为内存的读写速度比磁盘的读写速度快,但内存的空间比较小,因此,在本实施例中,在内存空间允许的情况下,采用内存缓存单元缓存最重要的视频数据,优先考虑接下来第一时间会请求播放的视频数据,通过开启内存缓存单元的缓存对应的视频数据,可以实现零延迟的数据加载;同时,在本实施例中,对于多个视频数据同时异步下载缓存时,可以采用进一步增加单次缓存的数据个数,在增加缓存量的同时提高缓存命中率。
在其中一些实施例中,根据第一请求中携带的索引信息,从预设的数据缓存单元中获取当前视频,包括如下步骤:
步骤61、根据索引信息所记录的数据分片的分片信息,在数据缓存单元中查找对应的数据分片,并确定查找结果,其中,数据缓存单元包括内存缓存单元和磁盘缓存单元。
步骤62、在查找结果为内存缓存单元和磁盘缓存单元均未缓存对应的数据分片时,从预设的网络服务端获取对应的数据分片,得到当前视频;
步骤63、将获取到的当前视频按预设规则缓存至预设的数据缓存单元。
在本实施例中,在接收到请求方请求获取当前视频的第一请求后,会在依次在内存缓存单元和磁盘缓存单元中查找是否有其对应的缓存数据,也就是查找内存缓存单元或磁盘缓存单元内是否具有对应的数据分片,在内存缓存单元和磁盘缓存单元内均未缓存对应的当前视频所对应的数据分片时,则从预设的网络服务端(在线的网络视频服务端)获取网络数据,也就是获取对应的数据分片,并在获取到对应的数据分片之后,进行磁盘缓存单元缓存该从网络服务端获取的数据分片并返回给请求方,以使请求方加载处理对应的数据分片或视频数据,完成播放闭环;同时,还进一步的判断是否需要通过内存缓存单元进行内存缓存数据,如果需要,则从完成磁盘缓存的磁盘缓存单元中获取对应的数据分片,进行内存缓存数据处理。
通过上述步骤中根据索引信息所记录的数据分片的分片信息,在数据缓存单元中查找对应的数据分片,并确定查找结果,其中,数据缓存单元包括内存缓存单元和磁盘缓存单元;在查找结果为内存缓存单元和磁盘缓存单元均未缓存对应的数据分片时,从预设的网络服务端获取对应的数据分片,得到当前视频;将获取到的当前视频按预设规则缓存至预设的数据缓存单元,实现从网络服务端获取请求方所请求的当前视频,加速视频数据的获取,提高数据加载速率。
为确保当前请求播放的视频数据优先播放,在其中一些实施例中,还实施如下步骤:
在请求方未播放当前视频之前,禁止执行根据从索引信息中检测到的参考分片信息,确定目标分片信息,基于目标分片信息,从预设的网络服务端下载与目标分片信息对应的目标分片,并将目标分片预加载至数据缓存单元的步骤。
在本实施例中,如果当前正在播放的视频数据还处于加载过程中,也就是请求方未完成完整接收到当前视频,则会对预加载任务延迟一定时间后再执行。
为确保预加载机制有效执行,在其中一些实施例中,还实施如下步骤:
步骤71、在请求方开始播放当前视频后的预设时间内,接收请求方重新请求获取视频数据的多个第二请求,其中,第二请求中携带有请求方重新请求获取的视频数据对应的索引信息。
步骤72、根据多个第二请求所携带的索引信息与第一请求所携带的索引信息,判断多个第二请求与第一请求是否为相同请求。
步骤73、在判断到多个第二请求与第一请求为相同请求的情况下,确定多个第二请求为无效请求。
在本实施例中,执行相同请求忽略原则,也就是对于同样的请求,则过滤并忽略在后的请求,例如:在频繁快进快退至相同播放时间点的场景,会发生短时间内存在多次相同的播放同一数据分片或视频数据的请求,并触发多次相同的预加载任务,通过过滤忽略这些在后的相同请求,可以避免不必要的重复请求处理,有效提升了资源的利用率及播放的稳定性。
步骤74、在判断到多个第二请求与第一请求为不同请求的情况下,在多个第二请求中,选取对应的请求时间与当前时间的时间差最小的一个请求,得到目标请求;基于目标请求所携带的索引信息,从预设的数据缓存单元中获取对应的视频数据。
在本实施例中,执行处理最新请求原则,也就是对不同的请求,优先处理最新的请求,忽略之前的旧的请求;在快速启动退出播放、频繁快进快退的场景中,会进行多次请求以及触发多次预加载任务,通过对预加载任务执行设定一定的延迟,避免立即执行,进行缓冲处理,可以有效地降低短时间内多次预加载任务的情况,同时保证最新请求得到优先执行。
通过上述步骤中的在请求方开始播放当前视频后的预设时间内,接收请求方重新请求获取视频数据的多个第二请求,其中,第二请求中携带有请求方重新请求获取的视频数据对应的索引信息;根据多个第二请求所携带的索引信息与第一请求所携带的索引信息,判断多个第二请求与第一请求是否为相同请求;在判断到多个第二请求与第一请求为相同请求的情况下,确定多个第二请求为无效请求;在判断到多个第二请求与第一请求为不同请求的情况下,在多个第二请求中,选取对应的请求时间与当前时间的时间差最小的一个请求,得到目标请求;基于目标请求所携带的索引信息,从预设的数据缓存单元中获取对应的视频数据,实现了高效的执行预加载缓存机制,有效地提升下载缓存视频资源的使用率,同时保证视频流畅播放的同时,最新请求播放的视频数据能够第一时间进行下载缓存处理,籍以提供视频播放速度,减少播放卡顿,提升用户播放体验。
在其中一些实施例中,分片信息包括对应数据分片的请求地址信息和播放时间段,根据多个第二请求所携带的索引信息与第一请求所携带的索引信息,判断多个第二请求与第一请求是否为相同请求,通过如下步骤实现:
步骤81、分别从多个第二请求和第一请求所携带的索引信息中,检测对应请求所请求获取的数据分片的分片信息,并确定每个分片信息对应的请求地址信息和播放时间段,其中,请求地址信息是根据对应的数据分片所关联的资源服务方式和数据缓存单元所确定的;
步骤82、判断多个第二请求和第一请求所对应的请求地址信息是否相同;
步骤83、在判断到请求地址信息不同的情况下,确定多个第二请求与第一请求为不同请求;
步骤84、在判断到请求地址信息相同的情况下,判断对应请求所对应的播放时间段是否相同,并根据判断结果,确定多个第二请求与第二请求是否为相同请求。
通过上述步骤中的分别从多个第二请求和第一请求所携带的索引信息中,检测对应请求所请求获取的数据分片的分片信息,并确定每个分片信息对应的请求地址信息和播放时间段,其中,请求地址信息是根据对应的数据分片所关联的资源服务方式和数据缓存单元所确定的;判断多个第二请求和第一请求所对应的请求地址信息是否相同;在判断到请求地址信息不同的情况下,确定多个第二请求与第一请求为不同请求;在判断到请求地址信息相同的情况下,判断对应请求所对应的播放时间段是否相同,并根据判断结果,确定多个第二请求与第二请求是否为相同请求,实现对请求进行校验,以实现最新请求优选执行和相同请求忽略执行,避免短时间内多次执行预加载任务,有效提升了资源的利用率及播放的稳定性。
在本实施例中,基于请求校验原则对请求方请求的每一次请求都会进行校验,也就是通过至少通过对应请求中的请求地址信息,来区分是否是同一个请求;因为,对于同一个视频数据在不同在线视频内容资源服务方式环境下,例如:传统视频服务,CDN视频内容资源服务、PCDN视频内容资源服务,会存在多个不同地址的情况下,基于请求地址信息中增加的在线视频内容服务方式的辅助标识信息,保证视频数据在不同环境下的请求,均鞥能够有效确定出每一个请求的唯一性。
图2是实施本申请优选实施例的视频播放的控制方法的播放器、本地视频代理实体及网络服务端的框架示意图;图3是本申请优选实施例的视频播放的控制方法的流程示意图;图4是本申请优选实施例执行视频播放及预加载时的时序示意图一;图5是本申请优选实施例执行视频播放及预加载时的时序示意图二;图6是本申请优选实施例执行预加载时的效果示意图,以下参考图2至6对本申请优选实施例的视频播放的控制方法进行具体说明如下:
结合图2,本申请优选实施例中,是通过播放器、本地视频代理实体和网络服务端进行对应的交互,完成当前请求的当前视频的播放和接下来需要播放的视频数据的预加载,其中,本地视频代理实体包括预加载管理器、内存缓存管理器、磁盘缓存管理器,三个管理器相互协作,完成当前视频的请求与播放和接下来需要播放的视频数据的预加载。
参考图3,本申请优选实施例中,通过如下步骤实现当前请求的当前视频的播放和接下来需要播放的视频数据的预加载:
步骤1、接收到播放器请求播放当前视频的请求,检查请求的当前视频是否有其对应的内存缓存数据,如果有,直接返回对应的当前视频给播放器,播放器加载处理对应的当前视频,完成播放闭环;
步骤2、如果步骤1中没有内存缓存数据,则检查请求的当前视频是否有其对应的磁盘缓存数据,如果有,直接返回对应的当前视频给播放端,播放器加载处理对应的当前视频,完成播放闭环。
步骤3、如果步骤2中没有磁盘缓存数据,则需要从网络服务端获取与对应的当前视频所对应的网络数据,获取到网络数据之后,进行磁盘缓存该网络数据并将网络数据返回给播放端,播放器加载处理对应的网络数据,完成播放闭环;同时判断是否需要进行内存缓存,如果需要,则可异步进行内存缓存处理。
步骤4、完成播放闭环的同时,判断是否有需要预加载处理视频数据,如果有需要预加载处理数据,则进行预加载处理。
在本实施例中,通过进行预加载的处理,以保证接下来播放的视频数据可以直接从对应的数据缓存单元中获取,完成数据获取加速的过程。
步骤5.在判断需要进行预加载处理视频数据,则从网络视频服务端获取网络数据,获取到网络数据之后,进行磁盘缓存,同时,判断是否需要进行内存缓存,如果需要,则可异步进行内存缓存处理。
步骤6.如果需要预加载内存缓存数据,则从磁盘缓存中获取缓存的视频,进行内存缓存处理。
在本实施例中,在执行对当前请求的当前视频进行播放和对接下来需要播放的视频数据的预加载的过程中,当同时使用内存缓存和磁盘缓存时,则可以参考图4所示的时序图,其中,该场景下,包括三种流程,分别是:流程①:存在内存缓存数据,直接返回;流程②:无内存缓存数据,但有磁盘缓存数据,加载磁盘数据至内存缓存中并返回;流程③:无内存及磁盘缓存数据,通过网络服务端加载视频数据,并写入到磁盘缓存中,最后将其放入内存缓存中并返回;当使用磁盘缓存时,则可以参考图5所示的时序图,其中,该场景下,包括两种流程,分别是:流程①:存在磁盘缓存数据,直接返回;流程②:无磁盘缓存数据,通过网络服务端加载视频数据,并写入到磁盘缓存中并返回。
以下对本申请实施例中所使用的本地视频代理实体、缓存预加载机制及自适应的内存缓存进行说明如下:
本地视频代理实体
在本申请实施例中,通过在播放器和网络服务端之间,建立一个本地视频代理实体的中间拦截层,对请求的在线视频数据进行分析和缓存,保证当前视频流畅播放的同时,利用空闲时间对接下来需要播放的视频数据在后台静默地下载缓存,使的接下来将播放的视频数据将直接从已缓存的视频数据中读取并返回,省去了网络资源的下载过程耗时,提升播放器的启播速度,同时,通过利用空闲时间提前加载数据,能保证在网络不稳定时,保持后台持续进行下载视频数据处理,对下载数据的时间进行填充,减少了播放过程中出现卡顿的次数。
在本实施例中,通过设置中间拦截层进行拦截处理的方式,能够有效隔离播放器数据获取和数据播放两种操作,对播放数据的解耦,降低软件的复杂性,同时,还可以实现在播放器端和网络服务端不作改动的情况下,实现不同播放器内核架构(系统内核、自研内核、第三方内核)、不同在线视频内容资源服务方式(例如:传统视频服务,CDN视频内容资源服务、PCDN视频内容资源服务)的无缝切换及兼容,提升了软件的兼容性和适配性。
缓存预加载机制
在本申请实施例中,利用本地视频代理的方式,对视频数据在后台进行提前下载和缓存处理,但为进一步解决在快速启动退出播放或频繁快进快退等对应的场景下,容易出现需要预加载缓存的视频数据过多、变化过快、最需要的视频并没有第一次时间去下载缓存、已下载的视频数据使用率不高的情况,造成了视频资源的浪费的问题,采用缓存预加载机制,提高下载缓存视频资源的使用率,在保证视频流畅播放的同时,最新请求播放的视频数据能够第一时间进行下载缓存处理,本申请实施例中还对缓存预加载的触发时机、执行原则、预加载过程、性能最大化进行优化。
具体地,对于触发时机:在每次播放器请求播放数据后,自动触发缓存预加载任务,保证预加载机制能够得到充分地执行。
对应执行原则,则执行如下原则:
1、当前播放优先原则:即优先保障当前正在播放的视频数据。如果当前正在播放的视频数据还处于加载过程中,会对预加载任务延迟一定时间后执行。
2、请求校验原则:即对每一次请求,会进行校验,通过请求的请求地址信息,来区分是否是同一个请求。对于同一个视频数据在不同在线视频内容资源服务方式环境下,存在多个不同地址的情况下,会根据请求地址信息中增加的在线视频内容服务方式的辅助标识信息,保证视频数据在不同环境下的请求,能够有效确定出每一个的请求的唯一性。
3、最新请求原则:对不同请求,优先最新的请求,忽略之前的旧请求。在快速启动退出播放、频繁快进快退等场景下,会进行多次请求,触发多次预加载任务,通过对预加载任务执行设定一定的延迟,避免立即执行,进行缓冲处理,可以有效地降低短时间内多次预加载任务的情况,同时保证最新请求得到优先执行。
4、相同请求忽略原则:对相同请求,则过滤并忽略后续相同的请求。在频繁快进快退至相同播放时间点的场景中,会发生短时间内存在多次相同的请求,而触发多次相同预加载任务,通过过滤忽略后续的相同的请求,可以避免不必要的重复请求处理,提升了资源的利用率及播放的稳定性。
结合图6,对本申请实施例的预加载的过程说明如下:为视频数据1为当前正在播放的视频数据,在预加载机制下,接下来要播放的视频数据2已在内存缓存中,可直接使用;同时视频数据3、视频数据4已在磁盘缓存中,也可直接使用,加载本地缓存的视频数据,省去了网络下载的时间;同时视频数据5、视频数据6等暂不需要的视频数据,并不在本地缓存中,可在需要的时候下载并放入到本地缓存中,这样在节省缓存空间的同时又极大的提升了视频的播放加载速度。
内存自适应管理
在本申请实施例中,基于电视设备的内存大小及磁盘空间的大小,采用基于高度自适应并且高缓存命中率的数据存储管理,确保视频播放的加速效果,提升对不同性能设备的友好性及兼容性。
本实施例中还提供了一种视频播放的控制装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。以下所使用的术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管在以下实施例中所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图7是本申请实施例提供的视频播放的控制装置的结构框图,如图7所示,该装置包括:
获取模块71,用于获取请求方请求获取当前视频的第一请求,并根据第一请求中携带的索引信息,从预设的数据缓存单元中获取当前视频,其中,索引信息记录当前视频对应的至少一个数据分片的分片信息,分片信息用于表征对应的数据分片的播放时间及请求地址;
确定模块72,与获取模块71耦合连接,用于在请求方播放所接收到的当前视频时,根据从索引信息中检测到的参考分片信息,确定目标分片信息,其中,参考分片信息为当前视频对应的至少一个数据分片中最后一个数据分片所对应的分片信息;
处理模块73,与确定模块72耦合连接,用于基于目标分片信息,从预设的网络服务端下载与目标分片信息对应的目标分片,并将目标分片预加载至数据缓存单元。
通过本申请实施例的视频播放的控制装置,采用获取请求方请求获取当前视频的第一请求,并根据第一请求中携带的索引信息,从预设的数据缓存单元中获取当前视频,其中,索引信息记录当前视频对应的至少一个数据分片的分片信息,分片信息用于表征对应的数据分片的播放时间及请求地址;在请求方播放所接收到的当前视频时,根据从索引信息中检测到的参考分片信息,确定目标分片信息,其中,参考分片信息为当前视频对应的至少一个数据分片中最后一个数据分片所对应的分片信息;基于目标分片信息,从预设的网络服务端下载与目标分片信息对应的目标分片,并将目标分片预加载至数据缓存单元,解决了相关技术中电视设备上在线视频播放启播慢、播放过程频繁卡顿的问题,实现节省网络流量资源,加速在线视频播放,提升在线视频的播放速度和用户体验的有益效果。
在其中一些实施例中,分片信息至少记录对应的数据分片的播放时间段,该确定模块72进一步包括:
第一确定单元,用于确定参考分片信息所对应的播放时间段;
第一选取单元,与第一确定单元耦合连接,用于选取参考分片信息所对应的播放时间段的下一个播放时间段,得到目标播放时间段,其中,目标分片信息所对应的播放时间段包括下一个播放时间段。
在其中一些实施例中,该处理模块73进一步包括:
第二确定单元,用于确定目标分片信息所对应的播放时间段的开始时间和结束时间;
第一下载单元,与第二确定单元耦合连接,用于从预设的网络服务端,下载包括与开始时间对应的起始帧到与结束时间对应的结束帧之间对应的视频帧,确定目标分片包括起始帧到结束帧之间对应的视频帧。
在其中一些实施例中,该处理模块72还用于在将目标分片缓存至数据缓存单元中的磁盘缓存单元后,判断是否进行内存缓存;在判断到需要进行内存缓存的情况下,从缓存至磁盘缓存单元的目标分片缓存至数据缓存单元中的内存缓存单元。
在其中一些实施例中,该获取模块71进一步包括:
第一查找单元,用于根据索引信息所记录的数据分片的分片信息,在数据缓存单元中查找对应的数据分片,并确定查找结果,其中,数据缓存单元包括内存缓存单元和磁盘缓存单元;
第三确定单元,与第一查找单元耦合连接,用于在查找结果为内存缓存单元和磁盘缓存单元其中之一缓存对应的数据分片时,确定从预设的数据缓存单元中获取当前视频。
在其中一些实施例中,该获取模块71进一步包括:
第一查找单元,用于根据索引信息所记录的数据分片的分片信息,在数据缓存单元中查找对应的数据分片,并确定查找结果,其中,数据缓存单元包括内存缓存单元和磁盘缓存单元;
第四确定单元,与第一查找单元耦合连接,用于在查找结果为内存缓存单元和磁盘缓存单元均未缓存对应的数据分片时,从预设的网络服务端获取对应的数据分片,得到当前视频;将获取到的当前视频按预设规则缓存至预设的数据缓存单元。
在其中一些实施例中,该装置还用于在请求方未播放当前视频之前,禁止执行根据从索引信息中检测到的参考分片信息,确定目标分片信息,基于目标分片信息,从预设的网络服务端下载与目标分片信息对应的目标分片,并将目标分片预加载至数据缓存单元的步骤。
在其中一些实施例中,该装置还用于在请求方开始播放当前视频后的预设时间内,接收请求方重新请求获取视频数据的多个第二请求,其中,第二请求中携带有请求方重新请求获取的视频数据对应的索引信息;根据多个第二请求所携带的索引信息与第一请求所携带的索引信息,判断多个第二请求与第一请求是否为相同请求;在判断到多个第二请求与第一请求为相同请求的情况下,确定多个第二请求为无效请求。
在其中一些实施例中,该装置还用于在判断到多个第二请求与第一请求为不同请求的情况下,在多个第二请求中,选取对应的请求时间与当前时间的时间差最小的一个请求,得到目标请求;基于目标请求所携带的索引信息,从预设的数据缓存单元中获取对应的视频数据。
在其中一些实施例中,分片信息包括对应数据分片的请求地址信息和播放时间段,该装置还用于分别从多个第二请求和第一请求所携带的索引信息中,检测对应请求所请求获取的数据分片的分片信息,并确定每个分片信息对应的请求地址信息和播放时间段,其中,请求地址信息是根据对应的数据分片所关联的资源服务方式和数据缓存单元所确定的;判断多个第二请求和第一请求所对应的请求地址信息是否相同;在判断到请求地址信息不同的情况下,确定多个第二请求与第一请求为不同请求;在判断到请求地址信息相同的情况下,判断对应请求所对应的播放时间段是否相同,并根据判断结果,确定多个第二请求与第二请求是否为相同请求。
图8是本申请实施例的电子装置的结构示意图,如图8所示,本申请实施例提供了一种电子装置,包括处理器81、通信接口82、存储器83和通信总线84,其中,处理器81,通信接口82,存储器83通过通信总线84完成相互间的通信,
存储器83,用于存放计算机程序;
处理器81,用于执行存储器83上所存放的程序时,实现图8中的方法步骤。
该电子装置中的处理实现图1中的方法步骤,所带来的技术效果与上述实施例执行图1中的视频播放的控制方法的技术效果一致,在此不再赘述。
上述电子装置提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述终端与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述任意一个方法实施例提供的视频播放的控制方法的步骤。
在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的视频播放的控制方法的步骤。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
Claims (13)
1.一种视频播放的控制方法,其特征在于,包括:
获取请求方请求获取当前视频的第一请求,并根据所述第一请求中携带的索引信息,从预设的数据缓存单元中获取所述当前视频,其中,所述索引信息记录所述当前视频对应的至少一个数据分片的分片信息,所述分片信息用于表征对应的所述数据分片的播放时间及请求地址;
在所述请求方播放所接收到的所述当前视频时,根据从所述索引信息中检测到的参考分片信息,确定目标分片信息,其中,所述参考分片信息为所述当前视频对应的至少一个数据分片中最后一个数据分片所对应的所述分片信息;
基于所述目标分片信息,从预设的网络服务端下载与所述目标分片信息对应的目标分片,并将所述目标分片预加载至所述数据缓存单元。
2.根据权利要求1所述的方法,其特征在于,所述分片信息至少记录对应的数据分片的播放时间段,根据从所述索引信息中检测到的参考分片信息,确定目标分片信息,包括:
确定所述参考分片信息所对应的播放时间段;
选取所述参考分片信息所对应的播放时间段的下一个播放时间段,得到目标播放时间段,其中,所述目标分片信息所对应的播放时间段包括所述下一个播放时间段。
3.根据权利要求2所述的方法,其特征在于,基于所述目标分片信息,从预设的网络服务端下载与所述目标分片信息对应的目标分片,包括:
确定所述目标分片信息所对应的播放时间段的开始时间和结束时间;
从预设的所述网络服务端,下载包括与所述开始时间对应的起始帧到与所述结束时间对应的结束帧之间对应的视频帧,确定所述目标分片包括所述起始帧到所述结束帧之间对应的视频帧。
4.根据权利要求3所述的方法,其特征在于,将所述目标分片预加载至所述数据缓存单元,包括:
在将所述目标分片缓存至所述数据缓存单元中的磁盘缓存单元后,判断是否进行内存缓存;
在判断到需要进行内存缓存的情况下,从缓存至所述磁盘缓存单元的所述目标分片缓存至所述数据缓存单元中的内存缓存单元。
5.根据权利要求1所述的方法,其特征在于,根据所述第一请求中携带的索引信息,从预设的数据缓存单元中获取所述当前视频,包括:
根据所述索引信息所记录的所述数据分片的所述分片信息,在所述数据缓存单元中查找对应的所述数据分片,并确定查找结果,其中,所述数据缓存单元包括内存缓存单元和磁盘缓存单元;
在所述查找结果为所述内存缓存单元和所述磁盘缓存单元其中之一缓存对应的所述数据分片时,确定从预设的数据缓存单元中获取所述当前视频。
6.根据权利要求5所述的方法,其特征在于,在所述查找结果为所述内存缓存单元和所述磁盘缓存单元均未缓存对应的所述数据分片时,所述方法还包括:
从预设的所述网络服务端获取对应的所述数据分片,得到所述当前视频;
将获取到的所述当前视频按预设规则缓存至预设的所述数据缓存单元。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述请求方未播放所述当前视频之前,禁止执行根据从所述索引信息中检测到的参考分片信息,确定目标分片信息,基于所述目标分片信息,从预设的网络服务端下载与所述目标分片信息对应的目标分片,并将所述目标分片预加载至所述数据缓存单元的步骤。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述请求方开始播放所述当前视频后的预设时间内,接收所述请求方重新请求获取视频数据的多个第二请求,其中,所述第二请求中携带有所述请求方重新请求获取的视频数据对应的索引信息;
根据多个所述第二请求所携带的索引信息与所述第一请求所携带的索引信息,判断多个所述第二请求与所述第一请求是否为相同请求;
在判断到多个所述第二请求与所述第一请求为相同请求的情况下,确定多个所述第二请求为无效请求。
9.根据权利要求8所述的方法,其特征在于,在判断到多个所述第二请求与所述第一请求为不同请求的情况下,所述方法还包括:
在多个所述第二请求中,选取对应的请求时间与当前时间的时间差最小的一个请求,得到目标请求;
基于所述目标请求所携带的索引信息,从预设的数据缓存单元中获取对应的视频数据。
10.根据权利要求8所述的方法,其特征在于,所述分片信息包括对应数据分片的请求地址信息和播放时间段,根据多个所述第二请求所携带的索引信息与所述第一请求所携带的索引信息,判断多个所述第二请求与所述第一请求是否为相同请求,包括:
分别从多个所述第二请求和所述第一请求所携带的索引信息中,检测对应请求所请求获取的所述数据分片的所述分片信息,并确定每个所述分片信息对应的所述请求地址信息和所述播放时间段,其中,所述请求地址信息是根据对应的数据分片所关联的资源服务方式和数据缓存单元所确定的;
判断多个所述第二请求和所述第一请求所对应的所述请求地址信息是否相同;
在判断到所述请求地址信息不同的情况下,确定多个所述第二请求与所述第一请求为不同请求;
在判断到所述请求地址信息相同的情况下,判断对应请求所对应的所述播放时间段是否相同,并根据判断结果,确定多个所述第二请求与所述第二请求是否为相同请求。
11.一种视频播放的控制装置,其特征在于,包括:
获取模块,用于获取请求方请求获取当前视频的第一请求,并根据所述第一请求中携带的索引信息,从预设的数据缓存单元中获取所述当前视频,其中,所述索引信息记录所述当前视频对应的至少一个数据分片的分片信息,所述分片信息用于表征对应的所述数据分片的播放时间及请求地址;
确定模块,用于在所述请求方播放所接收到的所述当前视频时,根据从所述索引信息中检测到的参考分片信息,确定目标分片信息,其中,所述参考分片信息为所述当前视频对应的至少一个数据分片中最后一个数据分片所对应的所述分片信息;
处理模块,用于基于所述目标分片信息,从预设的网络服务端下载与所述目标分片信息对应的目标分片,并将所述目标分片预加载至所述数据缓存单元。
12.一种电子装置,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-10任一项所述的视频播放的控制方法的步骤。
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-10任一项所述的视频播放的控制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211046180.8A CN115811631A (zh) | 2022-08-30 | 2022-08-30 | 视频播放的控制方法、装置、电子装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211046180.8A CN115811631A (zh) | 2022-08-30 | 2022-08-30 | 视频播放的控制方法、装置、电子装置和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115811631A true CN115811631A (zh) | 2023-03-17 |
Family
ID=85482461
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211046180.8A Pending CN115811631A (zh) | 2022-08-30 | 2022-08-30 | 视频播放的控制方法、装置、电子装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115811631A (zh) |
-
2022
- 2022-08-30 CN CN202211046180.8A patent/CN115811631A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8966003B2 (en) | Content delivery network stream server vignette distribution | |
JP5249017B2 (ja) | 階層的コンテンツのネットワーク・キャッシング | |
CN109600437B (zh) | 一种流媒体资源的下载方法及缓存服务器 | |
JP5592489B2 (ja) | キャッシング情報のシステム及び方法 | |
US20080201332A1 (en) | System and method for preloading content on the basis of user context | |
CN110247985B (zh) | 一种资源下载方法、装置、电子设备及介质 | |
CN110933517B (zh) | 码率切换方法、客户端和计算机可读存储介质 | |
US8838725B2 (en) | Internet cache subscription for wireless mobile users | |
JP2011511972A (ja) | 通信デバイスにおけるコンテンツの検索/ダウンロードのための装置および方法 | |
CN107197359B (zh) | 视频文件缓存方法及装置 | |
CN111107438B (zh) | 一种视频加载方法、装置及电子设备 | |
CN111246302B (zh) | 浏览器下载数据的方法、装置和终端 | |
US8954556B2 (en) | Utility-based model for caching programs in a content delivery network | |
CN111222004B (zh) | 一种音频播放方法、终端设备及车辆 | |
KR101595783B1 (ko) | 동적 데이터 저장을 위한 시스템 및 방법 | |
US20160006830A1 (en) | Method for operating a cache arranged along a transmission path between client terminals and at least one server, and corresponding cache | |
KR20220158275A (ko) | 네트워크에서 스트리밍되는 콘텐츠를 클라이언트 디바이스의 플레이어에서 재생하기 위한 방법 | |
CN110895515A (zh) | 内存缓存管理方法、多媒体服务器及计算机存储介质 | |
CN110908965A (zh) | 一种对象存储管理方法、装置、设备及存储介质 | |
CN104424116B (zh) | 一种嵌入式浏览器磁盘缓存的方法及系统 | |
CA3124540A1 (en) | Systems and methods for storing and delivering content assets | |
CN115811631A (zh) | 视频播放的控制方法、装置、电子装置和存储介质 | |
US20160212069A1 (en) | Cooperative management of client device cache memory in an http session | |
US11838560B2 (en) | Method and system for playing back streaming content using local streaming server | |
WO2016063161A1 (en) | Partial prefetching of indexed content |
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 |