视频缓冲智能控制方法及系统与流程

文档序号:13763948阅读:245来源:国知局
视频缓冲智能控制方法及系统与流程

本发明涉及视频流媒体技术领域,具体涉及一种视频流缓冲智能控制方法及系统。



背景技术:

以前,人们在通过互联网观看音视频文件时,通常是将音视频文件整个下载并存储在本地电脑后再进行观看。但随着互联网速度的快速提升,人们的视听习惯已经从传统的下载观看转向了在线观看。

与传统的将不同的音视频文件整个下载并存储在本地电脑后进行观看的音或视频播放形式不同,在线播放是一种通过在播放音视频文件之前将部分音视频文件的数据进行缓存,从而使得音视频文件的数据可以边传送边播放,进而使得用户可以直接在线观看音视频的一种视频播放形式,这样相比于传统的音视频播放形式,在线播放形式节省了下载等待时间和存储空间。

随着近年来移动终端技术的飞速发展,在智能手机上观看在线视频成为一种潮流和趋势。移动终端主要依靠无线网络来获取视频流数据,而无线网络的一个特点就是其带宽的不稳定性。为了保证在线视频播放的流畅度,传统而有效的方法是采用缓冲技术,通过在带宽条件好的时候缓冲一定的流数据,从而避免在带宽差的时候出现播放冻结的情况。然而另一方面,测量结果表明,用户通过移动终端观看在线视频时中途放弃播放的概率比较高。用户的这个行为将会导致处于缓冲区的数据浪费掉,也就是说系统下载了这些数据,但是不会被播放。

这种浪费对于有线网络环境来说是不足为患的,但是在无线网络中最为宝贵的就是带宽资源,而无线网络ISP(Internet Service Provider互联网服务提供商)一般采用按使用量计费的模式,所以用户需要为这些浪费的数据买单。另外,从大的无线网络环境来看,这种普遍存在的浪费也将增大网络生态系统的负载。缓冲区数据的浪费带来的另一个不容忽视的影响是对移动终端电池电量的消耗。电池蓄电量的不足本身就是移动移动终端发展的一大制约条件,而在线视频流数据下载过程的电量开销更增加了移动终端电量消耗,甚至成为移动终端主要的电量消耗之一。为了保持移动终端电池的续航能力,我们需要尽可能地减少浪费的数据量。

此外,在播放音视频文件的时候,目标缓冲时间是判断当前缓冲的视频流数据是否达到了可以播放的一个标准。只有当前的缓冲时间大于目标缓冲时间,才会判定当前能够播放音视频文件。

因此,若在播放音视频文件的过程中网络速度较慢时,会导致当前缓冲的播放缓冲时间较短,使得当前的缓冲时间不能达到该预设的目标缓冲时间的标准,从而导致当前的音视频文件无法正常播放,进而造成视频画面出现停滞或出现一卡一卡的卡顿现象,使得视频播放质量较差。



技术实现要素:

鉴于以上内容,有必要提出一种视频缓冲智能控制方法,其可以在保证音视频播放质量的前提下减少视频流数据的浪费。

一种视频缓冲智能控制方法,包括:

当移动终端开始播放视频文件时,获取所述移动终端的状态,所述移动终端的状态包括所述移动终端的网络信号情况;

计算所述移动终端的缓冲或下载速度;

根据计算出来的缓冲或下载速度进行视频流数据的缓冲或下载;

当已经缓冲或下载的视频流数据满足预先设置的缓冲播放时间时,暂停下载。

本发明较佳实施例中,所述计算所述移动终端的缓冲或下载速度包括:

计算一段时间内所述移动终端的平均缓冲或下载速度。

本发明其他较佳实施例中,当计算出来的所述移动终端的缓冲或下载速度大于预先设置的最大缓冲或下载速度时,以所述最大缓冲或下载速度进行视频流数据的缓冲或下载。

本发明其他较佳实施例中,该方法还包括:

当所述移动终端处于移动状态时,计算所述移动终端的移动状态与缓冲或下载速度之间的对应关系;

根据所述对应关系计算下一时间点的缓冲或下载速度;

当所述下一时间点的缓冲或下载速度大于预先设置的最大缓冲或下载速度时,以所设置的最大缓冲或下载速度进行视频流数据的缓冲或下载;

当所述下一时间点的缓冲或下载速度小于或者等于所述预先设置的最大缓冲或下载速度时,以所述下一时间点的实际缓冲或下载速度进行视频流数据的缓冲或下载。

本发明其他较佳实施例中,该方法还包括:

判断所述视频是否会持续播放;

当所述视频会持续播放时,进一步判断当前网络是否不稳定;

在当前网络信号不稳定时,在已经缓冲或下载的数据满足设置的缓冲播放时间之后继续缓冲或下载;

在不确定所述视频是否会持续播放或者当前网络稳定的情况下,在已经缓冲或下载的视频流数据满足设置的缓冲播放时间时,暂停下载。

鉴于以上内容,还有必要提出一种视频缓冲智能控制系统,其可以在保证音视频播放质量的前提下减少视频流数据的浪费。

一种视频缓冲智能控制系统,包括:

状态获取模块,用于当移动终端开始播放视频文件时,获取所述移动终端的状态,所述移动终端的状态包括所述移动终端的网络信号情况;

计算模块,用于计算所述移动终端的缓冲或下载速度;

下载模块,用于根据计算出来的缓冲或下载速度进行视频流数据的缓冲或下载;

控制模块,用于当已经缓冲或下载的视频流数据满足预先设置的缓冲播放时间时,暂停下载。

本发明较佳实施例中,所述计算模块具体用于:

计算一段时间内所述移动终端的平均缓冲或下载速度。

本发明其他较佳实施例中,所述控制模块还用于:

当计算出来的所述移动终端的缓冲或下载速度大于预先设置的最大缓冲或下载速度时,以所述最大缓冲或下载速度进行视频流数据的缓冲或下载。

本发明其他较佳实施例中,所述计算模块还用于当所述移动终端处于移动状态时,计算所述移动终端的移动状态与缓冲或下载速度之间的对应关系,根据所述对应关系计算下一时间点的缓冲或下载速度;

所述控制模块还用于:当所述下一时间点的缓冲或下载速度大于预先设置的最大缓冲或下载速度时,以所设置的最大缓冲或下载速度进行视频流数据的缓冲或下载,或者当所述下一时间点的缓冲或下载速度小于或者等于所述预先设置的最大缓冲或下载速度时,以所述下一时间点的实际缓冲或下载速度进行视频流数据的缓冲或下载。

本发明其他较佳实施例中,该系统还包括:

判断模块,用于判断所述视频是否会持续播放,以及当所述视频会持续播放时,进一步判断当前网络是否不稳定;

所述控制模块还用于在当前网络信号不稳定时,在已经缓冲或下载的数据满足设置的缓冲播放时间之后继续缓冲或下载,或者在不确定所述视频是否会持续播放或者当前网络稳定的情况下,在已经缓冲或下载的视频流数据满足设置的缓冲播放时间时,暂停下载。

相较于现有技术,本发明所述视频缓冲智能控制方法及系统可以根据移动终端的状态,智能地决策出下一个时间段内应该下载的视频流数据量,能够在保证播放质量的前提下大大减少传统缓冲策略所浪费的数据流量。

附图说明

图1所示是本发明视频缓冲智能控制方法第一实施例的方法流程图。

图2所示是本发明视频缓冲智能控制方法第二实施例的方法流程图。

图3所示是本发明视频缓冲智能控制方法第三实施例的方法流程图。

图4所示是执行本发明所述视频缓冲智能控制系统的移动终端的硬件结构示意图。

图5所示是本发明移动终端视频缓冲智能控制系统较佳实施例的功能模块图。

主要元件符号说明

移动终端 1

视频缓冲智能控制系统 10

存储设备 11

处理器 12

设置模块 100

侦测模块 101

状态获取模块 102

计算模块 103

下载模块 104

控制模块 105

判断模块 106

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。

基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例中,所述视频缓冲智能控制方法由一个移动终端所执行。所述移动终端可以是,但不限制于,智能手机、智能手表、平板电脑、笔记本电脑等移动智能移动终端。

所述移动终端拥有通过无线网络接入互联网的能力。所述无线网络包括公众移动通信网实现的无线网络(如4G,3G或GPRS)和无线局域网(Wi-Fi)两种方式。

本发明较佳实施例是在4G,3G或GPRS的网络环境下执行的。

参考图1所示,是本发明视频缓冲智能控制方法第一实施例的方法流程图。根据不同的需求,该图所示流程图中的执行顺序可以改变,某些可以省略。

S11,判断移动终端是否开始播放视频文件。

本发明较佳实施例中,当后缀名为wmv、asf、asx、rm、rmvb、mpg、mpeg、mpe、3gp、mov、mp4、m4v、avi、dat、mkv、flv、vob等格式的文件开启时,判断移动终端开始播放视频文件。

在步骤S11之前,还可以包括:接收设置的缓冲播放时间。

所述缓冲播放时间为预缓冲完成并可播放视频的时间。所述缓冲播放时间是移动终端判断当前缓冲的视频流数据是否达到了可以播放的一个标准。当移动终端在播放音视频文件的过程中网络速度较慢,使得移动终端当前缓冲的缓冲播放时间较短,不能达到该设置的缓冲播放时间的标准时,音视频文件的视频画面会出现停滞或一卡一卡的卡顿现象,而无法正常播放当前的视频文件。

在本发明其他较佳实施例中,接收设置的缓冲播放时间这一步骤也可以包括接收设置的最大缓冲或下载速度。

S12,获取所述移动终端的状态。

本发明较佳实施例中,所述移动终端的状态可以包括,但不限于,所述移动终端的网络信号情况等。

本发明其他实施例中,所述移动终端的状态还可以包括所述移动终端的移动状态。

S13,计算所述移动终端的缓冲或下载速度。

本发明较佳实施例中,所述计算的移动终端的缓冲或下载速度可以是一段时间内所述移动终端的平均缓冲或下载速度。

S14,根据计算出来的缓冲或下载速度进行视频流数据的缓冲或下载,并同时于S15,判断已经缓冲或下载的视频流数据是否满足设置的缓冲播放时间。

当已经缓冲或下载的视频流数据没有满足设置的缓冲播放时间时,返回执行上述的S12。

当已经缓冲或下载的视频流数据满足设置的缓冲播放时间时,执行S16,暂停下载,并同时继续执行S15,实时监控已经缓冲或下载的视频流数据是否满足设置的缓冲播放时间。

当随着视频的持续播放,已经缓冲或下载的视频流数据已经不能满足设置的缓冲播放时间时,返回执行上述的S12。

在本发明的其他较佳实施例中,上述流程还可以包括,当计算出来的移动终端的缓冲或下载速度大于所述设置的最大缓冲或下载速度时,S14中,以所述最大缓冲或下载速度进行视频流数据的缓冲或下载。

本实施例对缓冲播放时间进行了限制,当达到该设置的缓冲播放时间时,停止对视频流数据的下载,因此在用户通过移动终端观看在线视频时,避免由于中途放弃播放而导致的处于缓冲区的视频流数据的浪费。

应该了解,当移动终端处于移动状态中时,其网络信号可能不稳定。例如,在朝向着距离基站越来越远的方向或者有障碍物覆盖等的地方移动时,移动终端的网络信号会变得越来越差,相反,在朝向着距离基站越来越近的方向或者空旷的没有障碍物覆盖等的地方移动时,移动终端的网络信号会变得越来越好。当信号不稳定时,对于视频的缓冲或下载会造成影响。

因此,下面结合上述的图1以及下述的图2,说明本发明视频缓冲智能控制方法第二实施例的方法流程图。根据不同的需求,该图所示流程图中的执行顺序可以改变,某些可以省略。

如上述图1所示的S10,接收设置的缓冲播放时间以及最大缓冲或下载速度,以及S11,判断移动终端是否开始播放视频文件。当所述移动终端开始播放视频文件时,S12,获取所述移动终端的状态。所述移动终端的状态包括所述移动终端的网络信号情况以及所述移动终端的移动状态。

进一步地,参照图2,执行S17,判断所述移动终端是否处于移动状态。

若根据上述获取的移动终端的状态判断所述移动终端没有处于移动状态,则执行图1中的S13。

若根据上述获取的移动终端的状态判断所述移动终端处于移动状态时,则执行下述的S18,计算所述移动终端的移动状态与缓冲或下载速度之间的对应关系。

本发明实施例中,所述移动状态与缓冲或下载速度之间的对应关系为,例如,所述移动终端每移动预设时间段,如1秒钟,所述缓冲或下载速度的变化情况,如所述缓冲或下载速度增加或者减少N KB/S等。

S19,根据上述对应关系计算下一时间点的缓冲或下载速度。

例如,若所述移动终端当前的缓冲或下载速度为A KB/S,所述移动状态与缓冲或下载速度之间的对应关系所述移动终端每移动1秒钟,所述缓冲或下载速度减少N KB/S,则下一时间点,即下一秒所述移动终端的缓冲或下载速度为(A-N)KB/S。

S20,判断所述下一时间点的缓冲或下载速度是否大于所设置的最大缓冲或下载速度。若下一时间点的缓冲或下载速度大于所设置的最大缓冲或下载速度,则执行下述的S21,以所设置的最大缓冲或下载速度进行视频流数据的缓冲或下载。若下一时间点的缓冲或下载速度小于或者等于所设置的最大缓冲或下载速度,则执行下述的S22,以所述下一时间点的实际缓冲或下载速度进行视频流数据的缓冲或下载。

上述实施例进一步对视频文件的缓冲或下载速度进行了限制,以防止缓冲或下载速度过快所导致的由于中途放弃播放而造成视频流数据的浪费。

参阅图3所示,是本发明视频缓冲智能控制方法第三实施例的方法流程图。根据不同的需求,该图所示流程图中的执行顺序可以改变,某些可以省略。

在本发明较佳实施例中,图3所示的流程可以只与图1所示的流程结合,也可以与图1及图2中的流程结合。

当图1中的S16,已经缓冲或下载的视频流数据满足设置的缓冲播放时间而暂停下载之后,继续执行图3中的S23,判断所述视频是否会持续播放。

本发明较佳实施例中,当所述视频已经播放了预设时间长度,如30分钟,则认为所述视频会持续播放,执行S24,判断当前网络是否不稳定。

本发明实施例中,在当前网络信号不稳定时,如越来越差,或者网络信号时有时无,则判断当前网络不稳定,执行S25,在已经缓冲或下载的数据满足设置的缓冲播放时间之后继续缓冲或下载。

在不确定所述视频是否会持续播放或者当前网络稳定的情况下,可以返回图1中的S16,在已经缓冲或下载的视频流数据满足设置的缓冲播放时间时,暂停下载。

根据统计,当用户观看一个视频的时间超过了预设时间长度,如30分钟,则该用户持续观看该视频的可能性非常大,因此很少会出现中途退出的情况。因此,上述实施例在判断用户可能会对视频持续播放的情况下,不考虑所述缓冲播放时间的限制,因此,可以防止在网络情况不好的时候出现的卡顿现象。

以上所述,仅是本发明的具体实施方式,但本发明的保护范围并不局限于此,对于本领域的普通技术人员来说,在不脱离本发明创造构思的前提下,还可以做出改进,但这些均属于本发明的保护范围。

上述图1~3详细介绍了本发明的视频缓冲智能控制方法,下面结合第4~5图,分别对实现上述视频缓冲智能控制方法的硬件系统架构以及实现所述视频缓冲智能控制方法的软件系统的功能模块进行介绍。

应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。

如图4所示,是执行本发明所述视频缓冲智能控制系统的移动终端的硬件结构示意图。

在本发明较佳实施例中,所述移动终端1可以是,但不限制于,智能手机、智能手表、平板电脑、笔记本电脑等移动智能移动终端。

所述移动智能移动终端拥有通过无线网络接入互联网的能力。所述无线网络可以包括公众移动通信网实现的无线网络(如4G,3G或GPRS)和无线局域网(WiFi)两种方式。

本发明较佳实施例是在4G,3G或GPRS的网络环境下执行。

在本发明较佳实施例中,所述移动终端1包括视频缓冲智能控制系统10、存储设备11以及处理器12。应该了解,所述移动终端1也可以包括其他硬件或者软件,而并不限制于上述列举的部件。

所述存储设备11用于存储程序和各种数据,并在移动终端1运行过程中实现高速、自动地完成程序或数据的存取。所述存储设备11可以是移动终端1的外部存储设备和/或内部存储设备。进一步地,所述存储设备11可以是集成电路中没有实物形式的具有存储功能的电路,如RAM(Random-Access Memory,随机存取存储设备)、FIFO(First In First Out,)等。或者,所述存储设备11也可以是具有实物形式的存储设备,如内存条、TF卡(Trans-flash Card)等等。

所述处理器12又称中央处理器(CPU,Central Processing Unit),是一块超大规模的集成电路,是移动终端1的运算核心(Core)和控制核心(Control Unit)。处理器12的功能主要是解释程序指令以及处理软件中的数据。

所述视频缓冲智能控制系统10可以包括多个由程序段所组成的功能模块(详见图3)。所述视频缓冲智能控制系统10中的各个程序段的程序代码可以存储于所述存储设备11中,并由所述处理器12所执行,以执行视频缓冲的智能控制(详见图5中描述)。

参阅图5所示,是本发视频缓冲智能控制系统10较佳实施例中的功能模块图。

本实施例中,所述视频缓冲智能控制系统10根据其所执行的功能,可以被划分为多个功能模块。本实施例中,所述功能模块包括设置模块100、侦测模块101、状态获取模块102、计算模块103、下载模块104以及控制模块105。

所述设置模块100用于接收设置的缓冲播放时间。

所述缓冲播放时间为预缓冲完成并可播放视频的时间。所述缓冲播放时间是移动终端判断当前缓冲的视频流数据是否达到了可以播放的一个标准。当移动终端在播放音视频文件的过程中网络速度较慢,使得移动终端当前缓冲的缓冲播放时间较短,不能达到该设置的缓冲播放时间的标准时,音视频文件的视频画面会出现停滞或一卡一卡的卡顿现象,而无法正常播放当前的视频文件。

本发明其他实施例中,所述设置模块100还用于接收设置的最大缓冲或下载速度。

所述侦测模块101用于判断所述移动终端1是否开始播放视频文件。

本发明较佳实施例中,当后缀名为wmv、asf、asx、rm、rmvb、mpg、mpeg、mpe、3gp、mov、mp4、m4v、avi、dat、mkv、flv、vob等格式的文件开启时,判断所述移动终端1开始播放视频文件。

所述状态获取模块102用于获取所述移动终端1的状态。本发明较佳实施例中,所述移动终端1的状态可以包括,但不限于,移动终端1的网络信号情况等。

本发明其他实施例中,所述移动终端1中的状态还可以包括所述移动终端1的移动状态

所述计算模块103用于计算所述移动终端1的缓冲或下载速度。

本发明较佳实施例中,所述计算的移动终端1的缓冲或下载速度可以是一段时间内所述移动终端的平均缓冲或下载速度。

进一步地,当所述移动终端1处于移动状态时,所述计算的移动终端1的缓冲或下载速度也可以是根据移动终端的移动状态与缓冲或下载速度之间的对应关系,计算出来的下一时间点的缓冲或下载速度。

本发明实施例中,所述移动状态与缓冲或下载速度之间的对应关系为,例如,所述移动终端每移动1分钟,所述缓冲或下载速度的变化情况,如所述缓冲或下载速度增加或者减少N KB或S等。

例如,若所述移动终端当前的缓冲或下载速度为A KB/S,所述移动状态与缓冲或下载速度之间的对应关系所述移动终端每移动1秒钟,所述缓冲或下载速度减少N KB/S,则下一时间点,即下一秒所述移动终端的缓冲或下载速度为(A-N)KB/S。所述下载模块104用于以所述计算出来的缓冲或下载速度进行视频流数据的缓冲或下载。

所述控制模块105用于当已经缓冲或下载的视频流数据满足设置的缓冲播放时间时,控制暂停对所述视频流数据的下载。

本发明其他较佳实施例中,当所述计算出来缓冲或下载速度大于所设置的最大缓冲或下载速度时,所述下载模块104也可以根据所设置的最大缓冲或下载速度进行视频流数据的缓冲或下载。

本发明对缓冲播放时间进行了限制,当达到该设置的缓冲播放时间时,停止对视频流数据的下载,因此在用户通过移动终端观看在线视频时,避免由于中途放弃播放而导致的处于缓冲区的视频流数据的浪费。

进一步地,本发明也可以对视频文件的缓冲或下载速度进行限制,以防止缓冲或下载速度过快所导致的由于中途放弃播放而造成视频流数据的浪费。

本发明其他较佳实施例中,所述视频缓冲智能控制系统10还可以包括:

判断模块106,用于判断所述视频是否会持续播放,以及当所述视频会持续播放时,进一步判断当前网络是否不稳定。

所述控制模块105还用于在当前网络信号不稳定时,在已经缓冲或下载的数据满足设置的缓冲播放时间之后继续缓冲或下载,或者在不确定所述视频是否会持续播放或者当前网络稳定的情况下,在已经缓冲或下载的视频流数据满足设置的缓冲播放时间时,暂停下载。

在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。

上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,通讯移动终端,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分。

对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

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