视频播放控制方法、浏览器、存储设备及终端与流程

文档序号:11207279阅读:309来源:国知局
视频播放控制方法、浏览器、存储设备及终端与流程
本发明涉及互联网
技术领域
,尤其涉及一种视频播放控制方法、一种浏览器、一种存储设备及一种终端。
背景技术
:目前,基于html5(html(hypertextmarkuplanguage,超文本标记语言)的第五次重大修改)的video(视频)元素来展示视频的方案主要包括以下两种,其一是:在打开包含video元素的html5页面时,将待展示的视频数据下载至缓冲区,与此同时从缓冲区获取视频数据进行播放;此方案并未考虑缓冲区的视频数据是否满足播放需求,如果在网络情况不稳定或者网速较低情况下,缓冲区内的视频数据因不满足播放需求而会造成播放卡顿;其二是:在播放待展示的视频之前先播放固定时长的动画(比如20s、50s等),在播放动画的过程中将待展示的视频数据下载至缓冲区,动画播放完后再从缓冲区内获取视频数据进行播放;此方案设置统一的固定时长,无论用户处于任何环境下(网速快的环境或网速慢的环境)均需要花费相同的等待时间,用户体验较差。技术实现要素:本发明实施例提供一种视频播放控制方法、一种浏览器、一种存储设备及一种终端,既能够在不同网络环境下实现有区别性的、有针对性的播放等待时间,又可避免播放过程出现卡顿,保证视频播放的流畅性。一方面,本发明实施例提供一种视频播放控制方法,可包括:若检测到针对目标视频的播放请求,将所述目标视频的视频数据下载至缓冲区;根据所述缓冲区内的已下载视频数据的播放时长与预设时长的比例关系计算所述目标视频的加载进度;根据所述目标视频的加载进度输出播放等待提示;当所述缓冲区内的已下载视频数据的播放时长达到所述预设时长时,从所述缓冲区获取所述目标视频的视频数据进行播放。优选地,所述若检测到针对目标视频的播放请求,将所述目标视频的视频数据下载至缓冲区,包括:若检测到html5请求页面内包含video元素,初始化所述video元素,所述video元素包含目标视频的下载地址;调用所述video元素的api(applicationprogramminginterface,应用编程接口)接口获取video.play()函数及video.pause()函数;顺序执行所述video.play()函数及video.pause()函数,触发将所述目标视频的视频数据下载至缓冲区。优选地,所述根据所述缓冲区内的已下载视频数据的播放时长与预设时长的比例关系计算所述目标视频的加载进度,包括:调用定时循环操作接口实时获取所述缓冲区内的已下载视频数据的播放时长;计算所获得的播放时长与预设时长之间的比例,并将所述比例确定为所述目标视频的加载进度。优选地,所述调用定时循环操作接口实时获取所述缓冲区内的已下载视频数据的播放时长,包括:调用requestanimationframe接口实时获取所述video元素的缓冲属性;将所述video元素的缓冲属性中的首个缓冲时间确定为所述缓冲区内的已下载视频数据的播放时长。优选地,所述根据所述目标视频的加载进度输出播放等待提示,包括:根据所述目标视频的加载进度生成播放等待提示页面;输出所述播放等待提示页面。另一方面,本发明实施例提供一种浏览器,可包括:下载单元,用于若检测到针对目标视频的播放请求,将所述目标视频的视频数据下载至缓冲区;计算单元,用于根据所述缓冲区内的已下载视频数据的播放时长与预设时长的比例关系计算所述目标视频的加载进度;提示单元,用于根据所述目标视频的加载进度输出播放等待提示;播放控制单元,用于当所述缓冲区内的已下载视频数据的播放时长达到所述预设时长时,从所述缓冲区获取所述目标视频的视频数据进行播放。优选地,所述下载单元包括:初始化处理单元,用于若检测到html5请求页面内包含video元素,初始化所述video元素,所述video元素包含目标视频的下载地址;以及,函数调用单元,用于调用所述video元素的api接口获取video.play()函数及video.pause()函数;以及,执行单元,用于用于顺序执行所述video.play()函数及video.pause()函数,触发将所述目标视频的视频数据下载至缓冲区。优选地,所述计算单元包括:播放时长获取单元,用于调用定时循环操作接口实时获取所述缓冲区内的已下载视频数据的播放时长;加载进度计算单元,用于计算所获得的播放时长与预设时长之间的比例,并将所述比例确定为所述目标视频的加载进度。优选地,所述播放时长获取单元具体用于调用requestanimationframe接口实时获取所述video元素的缓冲属性;以及,将所述video元素的缓冲属性中的首个缓冲时间确定为所述缓冲区内的已下载视频数据的播放时长。优选地,所述提示单元包括:页面生成单元,用于根据所述目标视频的加载进度生成播放等待提示页面;输出单元,用于输出所述播放等待提示页面。再一方面,本发明实施例提供一种存储设备,所述存储设备存储有一条或一条以上指令,所述一条或一条以上指令适于由处理器加载并执行本发明实施例所述的视频播放控制方法。再一方面,本发明实施例提供一种终端,可包括:处理器,适于实现一条或一条以上指令;以及,存储设备,所述存储设备存储有一条或一条以上指令,所述一条或一条以上指令适于由所述处理器加载并执行本发明实施例所述的视频播放控制方法。本发明实施例可在播放视频的过程中首先采用预加载方式将视频数据下载至缓冲区,再根据已下载视频数据的播放时长与预设时长的比例关系计算视频的加载进度并输出播放等待提示,实现了依据实际网络环境有区别性的、有针对性的提示用户所需的播放等待时间;另外,待缓冲区内的已下载视频数据的播放时长达到预设时长后启动视频播放,此处的预设时长可以根据实际情况进行设定,通过预加载预设时长的视频数据可有效保证视频播放的流畅性,避免播放过程出现卡顿,有效提升用户体验。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例提供的一种视频播放控制方法的流程图;图2为本发明实施例提供的另一种视频播放控制方法的流程图;图3为本发明实施例提供的一种浏览器的结构示意图;图4为本发明实施例提供的一种终端的结构示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。html5是下一代的html,目前的浏览器均具备或即将具备支持html5的能力。html5并非仅仅用来表示web(worldwideweb,万维网)内容,它还对视频、音频、动画均进行标准化,例如:html5提供视频的标准接口,可实现无需任何插件支持,只需浏览器支持html5的video标签即可免插件安装直接播放视频;再如:html5提供音频的标准接口,浏览器仅需支持html5的audio标签即可免插件安装直接播放音频;再如:html5提供动画的标准接口,浏览器仅需支持html5的canvas标签即可免插件安装直接播放动画。html5还提供新的人机交互的标准,包括但不限于:新的解析规则以增强灵活性、新属性、离线编辑、多用途互联网邮件扩展和协议处理程序注册等等。html5规定了通过video元素来包含视频的标注方法,当前video元素支持三种视频格式:mp4(movingpictureexpertsgroup4,动态图像专家组,是一套用于音频、视频信息的压缩编码标准)、webm(是一个开放、免费的媒体文件格式)和ogg(全称为oggvobis,是一种免费、开放的音频压缩格式)。video元素提供了一些属性来对视频进行控制,其主要属性如下:属性功能描述controls控制显示播放控件autoplay自动播放width视频宽度height视频高度loop循环播放preload预加载,即设置是否等加载完再播放src视频的url地址poster视频封面,即未播放时显示的图片autobuffer浏览器缓冲方式video元素还提供了一些api接口函数来供直接调用,具体如下:本发明实施例基于html5的video元素播放视频的过程中,首先采用预加载方式将视频数据下载至缓冲区,再根据已下载视频数据的播放时长与预设时长的比例关系计算视频的加载进度并输出播放等待提示,能够依据实际网络环境有区别性的、有针对性的提示用户所需的播放等待时间,具体地:如果网络环境好,视频数据下载快则视频的加载进度快,所需的播放等待时间短;反之,如果网络环境差,视频数据下载慢则视频的加载进度慢,所需的播放等待时间长;另外,待缓冲区内的已下载视频数据的播放时长达到预设时长后启动视频播放,此处的预设时长可以根据实际情况进行设定,通过预加载预设时长的视频数据可有效保证视频播放的流畅性,避免播放过程出现卡顿,有效提升用户体验。基于上述描述,本发明实施例提供了一种视频播放控制方法,请参见图1,该视频播放控制方法可包括以下步骤s101-步骤s104。s101,若检测到针对目标视频的播放请求,将所述目标视频的视频数据下载至缓冲区。当包含video元素的html5页面被打开时,浏览器会接收到针对目标视频的播放请求,进而触发将待播放的视频数据下载至缓冲区。其中,缓冲区是终端为缓冲待播放的视频数据而分配的存储空间,缓冲区的存储大小可以根据实际需要进行设置,并且,缓冲区的缓冲方式可以包括多种,例如:可以将目标视频的所有视频数据全部下载至缓冲区后再进行播放;也可以先缓冲部分视频数据(如先缓冲预设时长的视频数据)再进行播放,在播放已缓冲部分的视频数据的过程中继续下载后续视频数据并覆盖刷新缓冲区内的数据以实现连续播放。s102,根据所述缓冲区内的已下载视频数据的播放时长与预设时长的比例关系计算所述目标视频的加载进度。预设时长可以根据实际需要进行设定,其目的在于保证目标视频的播放流畅性。目标视频的加载进度可以根据缓冲区内已下载视频数据的播放时长与预设时长的比例计算得到,例如:假设预设时长为5s,当缓冲区内的已下载视频数据的播放时长达到1s时,目标视频的加载进度为1/5=20%;当缓冲区内的已下载视频数据的播放时长达到2s时,目标视频的加载进度2/5=40%;以此类推,当缓冲区内的已下载视频数据的播放时长达到5s时,目标视频的加载进度为5/5=100%。可以理解的是,由于视频数据的下载速度与网络环境有关,因此,不同的网络环境下目标视频的加载进度也不同,具体地,如果网络环境佳(网速快带宽足),视频数据下载快则目标视频的加载进度快;反之,如果网络环境差(网速慢带宽不够),视频数据下载慢则目标视频的加载进度慢。s103,根据所述目标视频的加载进度输出播放等待提示。播放等待提示可以采用网页方式进行输出,并且在播放等待提示页面中包含目标视频的加载进度,这样,用户通过浏览播放等待提示页面可以直观地知道目标视频的加载情况及所需的播放等待时间等情况。s104,当所述缓冲区内的已下载视频数据的播放时长达到所述预设时长时,从所述缓冲区获取所述目标视频的视频数据进行播放。当缓冲区内的已下载视频数据的播放时长达到预设时长时,目标视频的加载进度为100%,此时可从缓冲区中获取已下载视频数据进行播放,在该预设时长的视频数据的播放过程中,目标视频的后续视频数据会持续下载至缓冲区内,并且覆盖已播放的视频数据,这样可以保证整个视频播放过程的流畅性,保证用户观看流畅性,提升用户体验。本发明实施例的视频播放控制方法,可在播放视频的过程中首先采用预加载方式将视频数据下载至缓冲区,再根据已下载视频数据的播放时长与预设时长的比例关系计算视频的加载进度并输出播放等待提示,实现了依据实际网络环境有区别性的、有针对性的提示用户所需的播放等待时间;另外,待缓冲区内的已下载视频数据的播放时长达到预设时长后启动视频播放,此处的预设时长可以根据实际情况进行设定,通过预加载预设时长的视频数据可有效保证视频播放的流畅性,避免播放过程出现卡顿,有效提升用户体验。本发明实施例还提供了另一种视频播放控制方法,请参见图2,该视频播放控制方法可包括以下步骤s201-步骤s208。s201,若检测到html5请求页面内包含video元素,初始化所述video元素,所述video元素包含目标视频的下载地址。s202,调用所述video元素的api接口获取video.play()函数及video.pause()函数。s203,顺序执行所述video.play()函数及video.pause()函数,触发将所述目标视频的视频数据下载至缓冲区。步骤s201-步骤s203属于针对目标视频进行预加载的过程。当包含video元素的html5请求页面被打开时,表明请求播放video元素包含的目标视频,为了保证目标视频的播放效果,需要初始化video元素。对video元素的初始化过程可以包括以下步骤:第一步,使用video标签,具体代码如下:<video></video>;第二步,设置必要的参数,具体通过video元素提供的各种属性进行设置,包括但不限于:通过src属性设置目标视频的地址信息,通过controls属性设置显示控件,通过height属性和width属性分别设置目标视频的播放高度和宽度,通过autoplay属性设置是否自动播放,以及,通过autobuffer属性设置缓冲方式。video元素提供了video.play()函数及video.pause()函数的api接口,调用video.play()函数及video.pause()函数并顺序执行此二个函数,可以暂停目标视频的播放过程并触发对目标视频的视频数据进行缓冲,达到预加载的目的。s204,调用定时循环操作接口实时获取所述缓冲区内的已下载视频数据的播放时长。由于视频数据持续性的被下载至缓冲区内,因此,缓冲区内的已下载视频数据是时刻变化的,需要实时获取该已下载视频数据的播放时长。具体实现中,步骤s203具体包括以下步骤s11-s12:s11,调用requestanimationframe函数实时获取所述video元素的缓冲属性。s12,将所述video元素的缓冲属性中的首个缓冲时间确定为所述缓冲区内已下载视频数据的播放时长。步骤s11-s12中,requestanimationframe函数是浏览器提供的用于定时循环操作的一个接口,调用requestanimationframe函数能够实时获得video.buffered.end(0)的值,在video元素的缓冲(autobuffer)属性中,video.buffered.end(0)是指首个缓冲时间(以秒计),本实施例中首个缓冲时间表示缓冲区内已下载视频数据的播放时长。s205,计算所获得的播放时长与预设时长之间的比例,并将所述比例确定为所述目标视频的加载进度。预设时长可以根据实际需要进行设定,其目的在于保证目标视频的播放流畅性。目标视频的加载进度可以根据缓冲区内已下载视频数据的播放时长与预设时长的比例计算得到,例如:假设预设时长为5s,当缓冲区内的已下载视频数据的播放时长达到1s时,目标视频的加载进度为1/5=20%;当缓冲区内的已下载视频数据的播放时长达到2s时,目标视频的加载进度2/5=40%;以此类推,当缓冲区内的已下载视频数据的播放时长达到5s时,目标视频的加载进度为5/5=100%。可以理解的是,由于视频数据的下载速度与网络环境有关,因此,不同的网络环境下目标视频的加载进度也不同,具体地,如果网络环境佳(网速快带宽足),视频数据下载快则目标视频的加载进度快;反之,如果网络环境差(网速慢带宽不够),视频数据下载慢则目标视频的加载进度慢。s206,根据所述目标视频的加载进度生成播放等待提示页面。s207,输出所述播放等待提示页面。步骤s206-步骤s207中,播放等待提示页面中包含目标视频的加载进度,目标视频的加载进度可以采用动画方式显示在播放等待提示页面中,例如:可根据目标视频的加载进度生成进度条、沙漏或时钟等动画,将动画加载至播放等待提示页面中进行输出;目标视频的加载进度也可以采用消息方式显示在播放等待提示页面中,例如:根据目标视频的加载进度生成文本消息如“已下载50%,您大概还需等待1s”等文本消息,将文本消息加载至播放等待提示页面中进行输出。用户可以通过播放等待提示页面直观地知道目标视频的加载情况及所需的播放等待时间等情况。s208,当所述缓冲区内的已下载视频数据的播放时长达到所述预设时长时,从所述缓冲区获取所述目标视频的视频数据进行播放。当缓冲区内的已下载视频数据的播放时长达到预设时长时,目标视频的加载进度为100%,此时可从缓冲区中获取已下载视频数据进行播放,在该预设时长的视频数据的播放过程中,目标视频的后续视频数据会持续下载至缓冲区内,并且覆盖已播放的视频数据,这样可以保证整个视频播放过程的流畅性,保证用户观看流畅性,提升用户体验。本发明实施例的视频播放控制方法,可在播放视频的过程中首先采用预加载方式将视频数据下载至缓冲区,再根据已下载视频数据的播放时长与预设时长的比例关系计算视频的加载进度并输出播放等待提示,实现了依据实际网络环境有区别性的、有针对性的提示用户所需的播放等待时间;另外,待缓冲区内的已下载视频数据的播放时长达到预设时长后启动视频播放,此处的预设时长可以根据实际情况进行设定,通过预加载预设时长的视频数据可有效保证视频播放的流畅性,避免播放过程出现卡顿,有效提升用户体验。基于上述的视频播放控制方法的实施例,本发明实施例还公开了一种浏览器,该浏览器可以是一个具备支持html5的能力的计算机程序(包括程序代码),且该浏览器可以运行于终端(如pc(personalcomputer,个人计算机)、手机等)中以用来执行图1-图2任一实施例所示的视频播放控制方法。请参见图3,该浏览器运行如下单元:下载单元,用于若检测到针对目标视频的播放请求,将所述目标视频的视频数据下载至缓冲区;计算单元,用于根据所述缓冲区内的已下载视频数据的播放时长与预设时长的比例关系计算所述目标视频的加载进度;提示单元,用于根据所述目标视频的加载进度输出播放等待提示;播放控制单元,用于当所述缓冲区内的已下载视频数据的播放时长达到所述预设时长时,从所述缓冲区获取所述目标视频的视频数据进行播放。具体实现中,该浏览器在运行所述下载单元的过程中,具体运行如下单元:初始化处理单元,用于若检测到html5请求页面内包含video元素,初始化所述video元素,所述video元素包含目标视频的下载地址;以及,函数调用单元,用于调用所述video元素的api接口获取video.play()函数及video.pause()函数;以及,执行单元,用于用于顺序执行所述video.play()函数及video.pause()函数,触发将所述目标视频的视频数据下载至缓冲区。具体实现中,该浏览器在运行所述计算单元的过程中,具体运行如下单元:播放时长获取单元,用于调用定时循环操作接口实时获取所述缓冲区内的已下载视频数据的播放时长;加载进度计算单元,用于计算所获得的播放时长与预设时长之间的比例,并将所述比例确定为所述目标视频的加载进度。具体实现中,该浏览器运行所述播放时长获取单元的过程具体为调用requestanimationframe接口实时获取所述video元素的缓冲属性;以及,将所述video元素的缓冲属性中的首个缓冲时间确定为所述缓冲区内的已下载视频数据的播放时长。具体实现中,该浏览器在运行所述提示单元的过程中,具体运行如下单元:页面生成单元,用于根据所述目标视频的加载进度生成播放等待提示页面;输出单元,用于输出所述播放等待提示页面。根据本发明的一个实施例,图1所示的视频播放控制方法涉及的步骤s101-s104可以是由图3所示的浏览器中的各个单元来执行的。例如,图1中所示的步骤s101-s104可以分别由图3中所示的下载单元、计算单元、提示单元和播放控制单元来执行。根据本发明的另一个实施例,图2所示的视频播放控制方法涉及的步骤s201-s208可以是由图3所示的浏览器中的各个单元来执行的。例如,图2中所示的步骤s201、s202、s203、s204、s205、s206、s207、s208可以分别由图3中所示的初始化处理单元、函数调用单元、执行单元、播放时长获取单元、加载进度计算单元、页面生成单元、输出单元和播放控制单元来执行;图2中所示的步骤s11-s12可以由图3所示的播放时长获取单元来执行。根据本发明的另一个实施例,图3所示的浏览器中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本发明的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本发明的其它实施例中,浏览器也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。根据本发明的另一个实施例,可以通过在包括中央处理单元(cpu)、随机存取存储设备(ram)、只读存储设备(rom)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图1-图2中所示的视频播放控制方法涉及的各步骤的计算机程序(包括程序代码),来构造如图3中所示的浏览器设备,以及来实现本发明实施例的视频播放控制方法。所述计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。本发明实施例的浏览器,可在播放视频的过程中首先采用预加载方式将视频数据下载至缓冲区,再根据已下载视频数据的播放时长与预设时长的比例关系计算视频的加载进度并输出播放等待提示,实现了依据实际网络环境有区别性的、有针对性的提示用户所需的播放等待时间;另外,待缓冲区内的已下载视频数据的播放时长达到预设时长后启动视频播放,此处的预设时长可以根据实际情况进行设定,通过预加载预设时长的视频数据可有效保证视频播放的流畅性,避免播放过程出现卡顿,有效提升用户体验。基于上述实施例所示的视频播放控制方法及浏览器,本发明实施例还提供了一种终端,该终端可用于执行上述图1-图2所示方法流程的相应步骤。具体实现中,本发明实施例中描述的终端包括但不限于诸如具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的移动电话、膝上型计算机或平板计算机之类的其它便携式设备。还应当理解的是,在某些实施例中,所述设备并非便携式通信设备,而是具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的台式计算机。请参见图4,该终端的内部结构可包括处理器、用户接口、网络接口及存储设备。其中,终端内的处理器、用户接口、网络接口及存储设备可通过总线或其他方式连接,在本发明实施例所示图4中以通过总线连接为例。其中,用户接口是实现用户与终端进行交互和信息交换的媒介,其具体体现可以包括用于输出的显示屏(display)以及用于输入的键盘(keyboard)等等,需要说明的是,此处的键盘既可以为实体键盘,也可以为触屏虚拟键盘,还可以为实体与触屏虚拟相结合的键盘。然而,应当理解的是,用户接口还可以包括诸如鼠标和/或控制杆的一个或多个其它物理用户接口设备。处理器(或称cpu(centralprocessingunit,中央处理器))是终端的计算核心以及控制核心,其适于实现一条或一条以上指令,具体适于加载并执行一条或一条以上指令从而实现相应方法流程或相应功能;例如:cpu可以用于解析用户向终端所发送的开关机指令,并控制终端进行开关机操作;再如:cpu可以在终端内部结构之间传输各类交互数据,等等。存储设备(memory)是终端中的记忆设备,用于存放程序和数据。可以理解的是,此处的存储设备既可以包括终端的内置存储设备,当然也可以包括终端所支持的扩展存储设备。存储设备提供存储空间,该存储空间存储了终端的操作系统。并且,在该存储空间中还存放了适于被处理器加载并执行的一条或一条以上的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的存储设备可以是高速ram存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器的存储设备。还需要特别说明的是,终端支持各种应用程序,例如以下中的一个或多个:绘图应用程序、演示应用程序、文字处理应用程序、网站创建应用程序、盘刻录应用程序、电子表格应用程序、游戏应用程序、电话应用程序、视频会议应用程序、电子邮件应用程序、即时消息收发应用程序、锻炼支持应用程序、照片管理应用程序、数码相机应用程序、数字摄影机应用程序、web浏览应用程序、数字音乐播放器应用程序和/或数字视频播放器应用程序。可以在终端上执行的各种应用程序可以使用诸如触摸敏感表面的至少一个公共物理用户接口设备。可以在应用程序之间和/或相应应用程序内调整和/或改变触摸敏感表面的一个或多个功能以及终端上显示的相应信息。这样,终端的公共物理架构(例如,触摸敏感表面)可以支持具有对用户而言直观且透明的用户界面的各种应用程序。在本发明实施例中,处理器加载并执行存储设备中存放的一条或一条以上指令,以实现上述图1-图2所示方法流程的相应步骤;具体实现中,存储设备中的一条或一条以上指令由处理器加载并执行如下步骤:若检测到针对目标视频的播放请求,将所述目标视频的视频数据下载至缓冲区;根据所述缓冲区内的已下载视频数据的播放时长与预设时长的比例关系计算所述目标视频的加载进度;根据所述目标视频的加载进度输出播放等待提示;当所述缓冲区内的已下载视频数据的播放时长达到所述预设时长时,从所述缓冲区获取所述目标视频的视频数据进行播放。具体实现中,所述处理器加载存储设备中的一条或一条以上指令在执行所述若检测到针对目标视频的播放请求,将所述目标视频的视频数据下载至缓冲区的步骤时,具体执行如下步骤:若检测到html5请求页面内包含video元素,初始化所述video元素,所述video元素包含目标视频的下载地址;调用所述video元素的api接口获取video.play()函数及video.pause()函数;顺序执行所述video.play()函数及video.pause()函数,触发将所述目标视频的视频数据下载至缓冲区。具体实现中,所述处理器加载存储设备中的一条或一条以上指令在执行所述根据所述缓冲区内的已下载视频数据的播放时长与预设时长的比例关系计算所述目标视频的加载进度的步骤时,具体执行如下步骤:调用定时循环操作接口实时获取所述缓冲区内的已下载视频数据的播放时长;计算所获得的播放时长与预设时长之间的比例,并将所述比例确定为所述目标视频的加载进度。具体实现中,所述处理器加载存储设备中的一条或一条以上指令在执行所述调用定时循环操作接口实时获取所述缓冲区内的已下载视频数据的播放时长的步骤时,具体执行如下步骤:调用requestanimationframe接口实时获取所述video元素的缓冲属性;将所述video元素的缓冲属性中的首个缓冲时间确定为所述缓冲区内的已下载视频数据的播放时长。具体实现中,所述处理器加载存储设备中的一条或一条以上指令在执行所述根据所述目标视频的加载进度输出播放等待提示的步骤时,具体执行如下步骤:根据所述目标视频的加载进度生成播放等待提示页面;输出所述播放等待提示页面。本发明实施例的终端,可在播放视频的过程中首先采用预加载方式将视频数据下载至缓冲区,再根据已下载视频数据的播放时长与预设时长的比例关系计算视频的加载进度并输出播放等待提示,实现了依据实际网络环境有区别性的、有针对性的提示用户所需的播放等待时间;另外,待缓冲区内的已下载视频数据的播放时长达到预设时长后启动视频播放,此处的预设时长可以根据实际情况进行设定,通过预加载预设时长的视频数据可有效保证视频播放的流畅性,避免播放过程出现卡顿,有效提升用户体验。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属
技术领域
的技术人员所理解。应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储设备中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1