多媒体资源的缓存方法及装置与流程

文档序号:12364468阅读:274来源:国知局
多媒体资源的缓存方法及装置与流程

本发明涉及信息技术领域,尤其涉及一种多媒体资源的缓存方法及装置。



背景技术:

目前,支持在线播放的视频网站或者视频客户端均按时间顺序缓存视频流,各个视频网站和视频客户端在在线播放的过程中能缓存多少视频均是默认的。在用户往后拖动进度条时,若拖动结束的时间点对应的视频未缓存,则容易造成卡顿的现象。



技术实现要素:

技术问题

有鉴于此,本发明要解决的技术问题是,现有的多媒体资源的缓存技术容易造成卡顿现象。

解决方案

为了解决上述技术问题,根据本发明的一实施例,提供了一种多媒体资源的缓存方法,包括:

在播放所述多媒体资源的过程中,确定当前播放时间点对应的所述多媒体资源的当前分片,其中,所述多媒体资源包括多个分片;

通过多个线程分别缓存所述当前分片之后的多个待播放分片。

对于上述方法,在一种可能的实现方式中,通过多个线程分别缓存所述当前分片之后的多个待播放分片,包括:

在满足第一预设条件的情况下,通过多个线程分别缓存所述当前分片之后的多个待播放分片;

其中,满足第一预设条件包括:

接收到用户发出的加速缓存的请求信息;和/或,

根据历史播放数据确定进行加速缓存。

对于上述方法,在一种可能的实现方式中,在通过多个线程分别缓存所述当前分片之后的多个待播放分片之后,所述方法还包括:

在已缓存的所述待播放分片满足第二预设条件的情况下,停止缓存;

其中,已缓存的所述待播放分片满足第二预设条件包括以下至少一项:

已缓存的所述待播放分片的数据量大于第一预设值;

已缓存的所述待播放分片的数量大于第二预设值;

已缓存的所述待播放分片包括所述当前分片之后的所有分片。

对于上述方法,在一种可能的实现方式中,所述方法还包括:

若检测到已缓存的所述待播放分片满足第三预设条件,则再次通过多个线程分别缓存所述当前分片之后的多个所述待播放分片,直至已缓存的所述待播放分片满足所述第二预设条件;

其中,已缓存的所述待播放分片满足第三预设条件包括:

已缓存的所述待播放分片的数据量小于第三预设值,其中,所述第三预设值小于或等于第一预设值;和/或,

已缓存的所述待播放分片的数量小于第四预设值,其中,所述第四预设值小于或等于第二预设值。

对于上述方法,在一种可能的实现方式中,在通过多个线程分别缓存所述当前分片之后的多个待播放分片之后,所述方法还包括:

在播放界面上显示所述待播放分片的缓存进度。

为了解决上述技术问题,根据本发明的另一实施例,提供了一种多媒体资源的缓存装置,包括:

当前分片确定模块,用于在播放所述多媒体资源的过程中,确定当前播放时间点对应的所述多媒体资源的当前分片,其中,所述多媒体资源包括多个分片;

第一缓存模块,用于通过多个线程分别缓存所述当前分片之后的多个待播放分片。

对于上述装置,在一种可能的实现方式中,所述第一缓存模块具体用于:

在满足第一预设条件的情况下,通过多个线程分别缓存所述当前分片之后的多个待播放分片;

其中,满足第一预设条件包括:

接收到用户发出的加速缓存的请求信息;和/或,

根据历史播放数据确定进行加速缓存。

对于上述装置,在一种可能的实现方式中,所述装置还包括:

缓存停止模块,用于在已缓存的所述待播放分片满足第二预设条件的情况下,停止缓存;

其中,已缓存的所述待播放分片满足第二预设条件包括以下至少一项:

已缓存的所述待播放分片的数据量大于第一预设值;

已缓存的所述待播放分片的数量大于第二预设值;

已缓存的所述待播放分片包括所述当前分片之后的所有分片。

对于上述装置,在一种可能的实现方式中,所述装置还包括:

第二缓存模块,用于若检测到已缓存的所述待播放分片满足第三预设条件,则再次通过多个线程分别缓存所述当前分片之后的多个所述待播放分片,直至已缓存的所述待播放分片满足所述第二预设条件;

其中,已缓存的所述待播放分片满足第三预设条件包括:

已缓存的所述待播放分片的数据量小于第三预设值,其中,所述第三预设值小于或等于第一预设值;和/或,

已缓存的所述待播放分片的数量小于第四预设值,其中,所述第四预设值小于或等于第二预设值。

对于上述装置,在一种可能的实现方式中,所述装置还包括:

缓存进度显示模块,用于在播放界面上显示所述待播放分片的缓存进度。

有益效果

通过在播放多媒体资源的过程中,确定当前播放时间点对应的多媒体资源的当前分片,再通过多个线程分别缓存当前分片之后的多个待播放分片,根据本发明实施例的多媒体资源的缓存方法及装置能够在用户观看多媒体资源的过程中大大减少卡顿现象,且由于有较多的缓存数据,因此在用户往后拖动进度条时也能降低卡顿的可能性,从而能够提高用户的观看体验。

根据下面参考附图对示例性实施例的详细说明,本发明的其它特征及方面将变得清楚。

附图说明

包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本发明的示例性实施例、特征和方面,并且用于解释本发明的原理。

图1示出根据本发明一实施例的多媒体资源的缓存方法的实现流程图;

图2示出根据本发明一实施例的多媒体资源的缓存方法的一示例性的实现流程图;

图3示出根据本发明一实施例的多媒体资源的缓存方法中的预设按钮的示意图;

图4示出根据本发明一实施例的多媒体资源的缓存方法的一示例性的实现流程图;

图5示出根据本发明一实施例的多媒体资源的缓存方法的一示例性的实现流程图;

图6示出根据本发明一实施例的多媒体资源的缓存方法的一示例性的实现流程图;

图7示出根据本发明一实施例的多媒体资源的缓存方法中在播放界面上显示待播放分片的缓存进度的示意图;

图8示出根据本发明一实施例的多媒体资源的缓存方法的一示例性的实现流程图;

图9示出根据本发明另一实施例的多媒体资源的缓存装置的结构框图;

图10示出根据本发明另一实施例的多媒体资源的缓存装置的一示例性的结构框图;

图11示出了本发明的另一个实施例的一种多媒体资源的缓存设备的结构框图。

具体实施方式

以下将参考附图详细说明本发明的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。

在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。

另外,为了更好的说明本发明,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本发明同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本发明的主旨。

实施例1

图1示出根据本发明一实施例的多媒体资源的缓存方法的实现流程图。如图1所示,该方法主要包括:

在步骤S101中,在播放多媒体资源的过程中,确定当前播放时间点对应的多媒体资源的当前分片,其中,多媒体资源包括多个分片。

需要说明的是,本发明实施例的执行主体可以为PC(Personal Computer,个人电脑),也可以为手机或者平板电脑等移动终端,还可以为其他多媒体资源的缓存装置,在此不作限定。多媒体可以是多种媒体的综合,例如可以包括文字、声音和图像等多种媒体形式。例如,多媒体资源可以为视频,在此不作限定。

在步骤S101之前,服务器可以将每个多媒体资源分别划分为多个分片。

作为本发明实施例的一个示例,多媒体资源的缓存装置可以通过播放器或者网页在线播放多媒体资源。在播放多媒体资源的过程中,确定当前播放时间点对应的多媒体资源的当前分片,换言之,当前分片可以是播放器当前正在播放的该多媒体资源的分片。

在一种可能的实现方式中,可以在播放界面的进度条上用一小圆点标识当前播放时间点,例如,可以为图3和图7所示的进度条上的小圆点。

在步骤S102中,通过多个线程分别缓存当前分片之后的多个待播放分片。

在本发明实施例中,在播放当前分片的过程中,通过多个线程分别缓存当前分片之后的多个待播放分片。其中,待播放分片为时间在当前分片之后的分片。例如,当前分片为第i个分片,可以开启4个线程分别缓存第i+1个分片、第i+2个分片、第i+3个分片和第i+4个分片。其中,第i+1个分片为第i个分片之后的第一个分片,第i+2个分片为第i个分片之后的第2个分片,以此类推。

图2示出根据本发明一实施例的多媒体资源的缓存方法的一示例性的实现流程图。如图2所示,该方法主要包括:

在步骤S201中,在播放多媒体资源的过程中,确定当前播放时间点对应的多媒体资源的当前分片,其中,多媒体资源包括多个分片。

在步骤S202中,在满足第一预设条件的情况下,通过多个线程分别缓存当前分片之后的多个待播放分片。

在一种可能的实现方式中,满足第一预设条件包括:接收到用户发出的加速缓存的请求信息;和/或,根据历史播放数据确定进行加速缓存。

作为本发明实施例的一个示例,在接收到用户发出的加速缓存的请求信息的情况下,通过多个线程分别缓存当前分片之后的多个待播放分片。例如,用户可以通过设置在播放界面上的预设按钮发出加速缓存的请求信息。图3示出根据本发明一实施例的多媒体资源的缓存方法中的预设按钮的示意图。如图3所示,可以在播放界面上设置预设按钮,若检测到用户点击该预设按钮,则可以弹出一对话框,并判断用户发出加速缓存的请求信息。例如,在图3中,检测到用户在弹出的对话框中点击“立即开启”狂飙模式的按钮,则判定接收到用户发出的加速缓存的请求信息。

作为本发明实施例的另一个示例,可以在多媒体资源缓存的数据量大于第五预设值的情况下,在播放界面上显示预设按钮。

作为本发明实施例的另一个示例,在根据历史播放数据确定进行加速缓存的情况下,通过多个线程分别缓存当前分片之后的多个待播放分片。例如,若所播放的上一个多媒体资源进行了加速缓存,则可以确定对当前播放的多媒体资源进行加速缓存。再例如,如图3所示,若在播放上一个多媒体资源的过程中,检测到用户点击“下次默认开启”狂飙模式的按钮,则可以确定对当前播放的多媒体资源进行加速缓存。

图4示出根据本发明一实施例的多媒体资源的缓存方法的一示例性的实现流程图。如图4所示,该方法主要包括:

在步骤S401中,在播放多媒体资源的过程中,确定当前播放时间点对应的多媒体资源的当前分片,其中,多媒体资源包括多个分片。

在步骤S402中,通过多个线程分别缓存当前分片之后的多个待播放分片。

在步骤S403中,在已缓存的待播放分片满足第二预设条件的情况下,停止缓存。

在一种可能的实现方式中,已缓存的待播放分片满足第二预设条件包括以下至少一项:已缓存的待播放分片的数据量大于第一预设值;已缓存的待播放分片的数量大于第二预设值;已缓存的待播放分片包括当前分片之后的所有分片。例如,第一预设值可以为400Mb,第二预设值可以为7。

作为本发明实施例的一个示例,在已缓存的待播放分片的数据量大于第一预设值的情况下,停止缓存,并等待开始缓存的信号。

作为本发明实施例的另一个示例,在已缓存的待播放分片的数量大于第二预设值的情况下,停止缓存,并等待开始缓存的信号。

作为本发明实施例的另一个示例,在已缓存的待播放分片包括当前分片之后的所有分片,即所有待播放分片均已缓存的情况下,停止缓存。

图5示出根据本发明一实施例的多媒体资源的缓存方法的一示例性的实现流程图。如图5所示,该方法主要包括:

在步骤S501中,在播放多媒体资源的过程中,确定当前播放时间点对应的多媒体资源的当前分片,其中,多媒体资源包括多个分片。

在步骤S502中,通过多个线程分别缓存当前分片之后的多个待播放分片。

在步骤S503中,在已缓存的待播放分片满足第二预设条件的情况下,停止缓存。

在步骤S504中,若检测到已缓存的待播放分片满足第三预设条件,则再次通过多个线程分别缓存当前分片之后的多个待播放分片,直至已缓存的待播放分片满足第二预设条件。

作为本发明实施例的一个示例,若检测到已缓存的待播放分片满足第三预设条件,则可以生成开始缓存的信号,以再次通过多个线程分别缓存当前分片之后的多个待播放分片。

在一种可能的实现方式中,已缓存的待播放分片满足第三预设条件包括:已缓存的待播放分片的数据量小于第三预设值,其中,第三预设值小于或等于第一预设值;和/或,已缓存的待播放分片的数量小于第四预设值,其中,第四预设值小于或等于第二预设值。例如,第三预设值可以为400Mb,第四预设值可以为7。

图6示出根据本发明一实施例的多媒体资源的缓存方法的一示例性的实现流程图。如图6所示,该方法主要包括:

在步骤S601中,在播放多媒体资源的过程中,确定当前播放时间点对应的多媒体资源的当前分片,其中,多媒体资源包括多个分片。

在步骤S602中,通过多个线程分别缓存当前分片之后的多个待播放分片。

在步骤S603中,在播放界面上显示待播放分片的缓存进度。

图7示出根据本发明一实施例的多媒体资源的缓存方法中在播放界面上显示待播放分片的缓存进度的示意图。如图7所示,作为本发明实施例的一个示例,可以在播放界面的进度条上显示待播放分片的缓存进度,例如,播放器内核可以将待播放分片的缓存进度反馈给播放器界面,从而使用户能够直观地看到加速缓存的效果。

图8示出根据本发明一实施例的多媒体资源的缓存方法的一示例性的实现流程图。如图8所示,该方法主要包括:

在步骤S801中,播放器内核接收开启狂飙模式的指令。

在步骤S802中,开启多个线程分别缓存当前分片之后的多个待播放分片。

在步骤S803中,判断已缓存的待播放分片的数据量是否达到第一预设值,若是,则执行步骤S804,否则执行步骤S805。

在步骤S804中,停止缓存。

在步骤S805中,判断已缓存的待播放分片的数量是否达到第二预设值,若是,则执行步骤S804,否则执行步骤S806。

在步骤S806中,继续通过多个线程分别缓存当前分片之后的多个待播放分片,并更新已缓存的待播放分片数,将待播放分片的缓存进度实时返回给播放界面。

在步骤S807中,定时判断已缓存的待播放分片的消耗情况,并根据已缓存的待播放分片的消耗情况继续缓存待播放的分片。

这样,通过在播放多媒体资源的过程中,确定当前播放时间点对应的多媒体资源的当前分片,再通过多个线程分别缓存当前分片之后的多个待播放分片,根据本发明实施例的多媒体资源的缓存方法能够在用户观看多媒体资源的过程中大大减少卡顿现象,提高播放的流畅性,且由于有较多的缓存数据,因此在用户往后拖动进度条时也能降低卡顿的可能性,从而能够提高用户的观看体验。

实施例2

图9示出根据本发明另一实施例的多媒体资源的缓存装置的结构框图。该装置可以用于运行图1所示的多媒体资源的缓存方法。为了便于说明,在图9中仅示出了与本发明实施例相关的部分。

如图9所示,该装置包括:当前分片确定模块91,用于在播放所述多媒体资源的过程中,确定当前播放时间点对应的所述多媒体资源的当前分片,其中,所述多媒体资源包括多个分片;第一缓存模块92,用于通过多个线程分别缓存所述当前分片之后的多个待播放分片。

图10示出根据本发明另一实施例的多媒体资源的缓存装置的一示例性的结构框图。该装置可以用于运行图1至图8所示的多媒体资源的缓存方法。为了便于说明,在图10中仅示出了与本发明实施例相关的部分。图10中标号与图9相同的组件具有相同的功能,为简明起见,省略对这些组件的详细说明。如图10所示:

在一种可能的实现方式中,所述第一缓存模块92具体用于:在满足第一预设条件的情况下,通过多个线程分别缓存所述当前分片之后的多个待播放分片;其中,满足第一预设条件包括:接收到用户发出的加速缓存的请求信息;和/或,根据历史播放数据确定进行加速缓存。

在一种可能的实现方式中,所述装置还包括:缓存停止模块93,用于在已缓存的所述待播放分片满足第二预设条件的情况下,停止缓存;其中,已缓存的所述待播放分片满足第二预设条件包括以下至少一项:已缓存的所述待播放分片的数据量大于第一预设值;已缓存的所述待播放分片的数量大于第二预设值;已缓存的所述待播放分片包括所述当前分片之后的所有分片。

在一种可能的实现方式中,所述装置还包括:第二缓存模块94,用于若检测到已缓存的所述待播放分片满足第三预设条件,则再次通过多个线程分别缓存所述当前分片之后的多个所述待播放分片,直至已缓存的所述待播放分片满足所述第二预设条件;其中,已缓存的所述待播放分片满足第三预设条件包括:已缓存的所述待播放分片的数据量小于第三预设值,其中,所述第三预设值小于或等于第一预设值;和/或,已缓存的所述待播放分片的数量小于第四预设值,其中,所述第四预设值小于或等于第二预设值。

在一种可能的实现方式中,所述装置还包括:缓存进度显示模块95,用于在播放界面上显示所述待播放分片的缓存进度。

需要说明的是,这样,通过在播放多媒体资源的过程中,确定当前播放时间点对应的多媒体资源的当前分片,再通过多个线程分别缓存当前分片之后的多个待播放分片,根据本发明实施例的多媒体资源的缓存装置能够在用户观看多媒体资源的过程中大大减少卡顿现象,且由于有较多的缓存数据,因此在用户往后拖动进度条时也能降低卡顿的可能性,从而能够提高用户的观看体验。

实施例3

图11示出了本发明的另一个实施例的一种多媒体资源的缓存设备的结构框图。所述多媒体资源的缓存设备1100可以是具备计算能力的主机服务器、个人计算机PC、或者可携带的便携式计算机或终端等。本发明具体实施例并不对计算节点的具体实现做限定。

所述多媒体资源的缓存设备1100包括处理器(processor)1110、通信接口(Communications Interface)1120、存储器(memory)1130和总线1140。其中,处理器1110、通信接口1120、以及存储器1130通过总线1140完成相互间的通信。

通信接口1120用于与网络设备通信,其中网络设备包括例如虚拟机管理中心、共享存储等。

处理器1110用于执行程序。处理器1110可能是一个中央处理器CPU,或者是专用集成电路ASIC(Application Specific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。

存储器1130用于存放文件。存储器1130可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1130也可以是存储器阵列。存储器1130还可能被分块,并且所述块可按一定的规则组合成虚拟卷。

在一种可能的实施方式中,上述程序可为包括计算机操作指令的程序代码。该程序具体可用于:实现实施例1中各步骤的操作。

本领域普通技术人员可以意识到,本文所描述的实施例中的各示例性单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件形式来实现,取决于技术方案的特定应用和设计约束条件。专业技术人员可以针对特定的应用选择不同的方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

如果以计算机软件的形式来实现所述功能并作为独立的产品销售或使用时,则在一定程度上可认为本发明的技术方案的全部或部分(例如对现有技术做出贡献的部分)是以计算机软件产品的形式体现的。该计算机软件产品通常存储在计算机可读取的非易失性存储介质中,包括若干指令用以使得计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各实施例方法的全部或部分步骤。而前述的存储介质包括U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1