视频播放的方法、装置和存储介质与流程

文档序号:18471951发布日期:2019-08-20 20:24阅读:124来源:国知局
视频播放的方法、装置和存储介质与流程

本发明涉及网络通信技术领域,尤其涉及一种视频播放的方法、装置和存储介质。



背景技术:

随着网络通信技术的快速发展,网络应用给人们的生活带来了极大的便利。例如,用户可以通过一个应用(如智能电视中的桌面应用)来播放多个信源,也可以通过不同应用来播放同一个信源(如电视(tv)信源)。具体的,通过智能电视中的桌面应用可以收看由模拟电视或者数字电视提供的视频资源等。目前,不同的应用所提供的功能不同。例如,在智能电视的桌面应用中会有一个视频窗口用于电视直播节目或多媒体视频内容的播放。该桌面应用基于其视频窗口,只能提供简单的播放能力。对于多媒体视频或电视直播节目播放时进一步的功能,如快进、返回、立体音响等功能需要进入到对应的应用中才能使用。因此,基于不同的应用的功能,用户经常需要为播放同一视频而在不同的视频应用间进行切换。例如,在智能电视的播放不同信源的过程中,带有视频窗口的不同应用之间的切换跳转,就是较高频的一个切换场景。

申请人经研究发现:因为视频播放窗口以及相应播放资源需要依附于应用的生命周期。在应用退出后,视频播放窗口以及相应播放资源需要被销毁。例如,在现有的智能电视播放视频的过程中,若需从正在播放某视频的应用a跳转到应用b中继续去播放同一视频,中间需要先销毁应用a的视频播放窗口以及相应播放资源,然后退出应用a,接着启动应用b,最后去创建应用b的视频播放窗口以及相应播放资源。由于应用切换导致的视频播放窗口以及相应播放资源的销毁和重建是相对耗时的操作,这就导致了在应用b启动之后,视频窗口还需要等待一段时候才能继续播放应用a所播放的那条视频。

如何解决播放相同内容(如视频资源和播放信源等)的不同应用间切换不流畅,切换后的新应用的视频窗口需要等待一段时候后才能继续播放切换前的视频的问题,成为亟待解决的技术问题。



技术实现要素:

为了解决播放相同内容的不同应用间切换不流畅,切换后的新应用的视频窗口需要等待一段时候后才能继续播放切换前的视频的问题,本发明实施例提供了一种视频播放的方法、装置和存储介质。

第一方面,提供了一种视频播放的方法。该方法包括以下步骤:

接收第一应用使用共享播放器的使用请求;

响应于使用请求,向第一应用提供共享播放器,使得第一应用采用共享播放器播放视频资源;

在视频资源从第一应用切换至第二应用播放的情况下,向第二应用提供共享播放器,使得第二应用采用共享播放器播放视频资源。

第二方面,提供了一种视频播放的方法。该方法包括以下步骤:

第一应用发送使用共享播放器播放视频资源的第一使用请求;

在第一使用请求被响应后,第一应用采用共享播放器播放视频资源;

在视频资源从第一应用切换至第二应用播放的情况下,第二应用采用共享播放器播放所述视频资源。

第三方面,提供了一种视频播放的装置。该装置包括:

接收单元,用于接收第一应用使用共享播放器的使用请求;

第一提供单元,用于响应于使用请求,向第一应用提供共享播放器,使得第一应用采用共享播放器播放视频资源;

第二提供单元,用于在视频资源从第一应用切换至第二应用播放的情况下,向第二应用提供共享播放器,使得第二应用采用共享播放器播放视频资源。

第四方面,提供了一种视频播放的装置。该装置包括:

发送单元,用于由第一应用发送使用共享播放器播放视频资源的第一使用请求;

第一播放单元,用于在第一使用请求被响应后,第一应用采用所述共享播放器播放所述视频资源;

第二播放单元,用于在视频资源从第一应用切换至第二应用播放的情况下,第二应用采用所述共享播放器播放视频资源。

第五方面,提供了一种视频播放的装置。该装置包括:

存储器,用于存放程序;

处理器,用于执行所述存储器存储的程序,所述程序使得所述处理器执行上述各方面所述的方法。

第六方面,提供了一种计算机可读存储介质。该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。

第七方面,提供了一种包含指令的计算机程序产品。当该产品在计算机上运行时,使得计算机执行上述各方面所述的方法。

第八方面,提供了一种计算机程序。当该计算机程序在计算机上运行时,使得计算机执行上述各方面所述的方法。

由此,上述发明实施例可以通过接收第一应用获取共享播放器的使用请求,向第一应用发送共享播放器。该共享播放器可以由视频播放窗口以及相应播放资源抽象而成。共享播放器可以脱离应用的生命周期的控制,进而可以在应用之间进行播放器共享。第一应用可以采用共享播放器在视频播放窗口中播放视频资源。

上述发明实施例还可以通过接收将视频资源从第一应用切换至第二应用播放的切换请求,向第二应用发送共享播放器,可以使得第二应用采用共享播放器播放视频资源。

如此设计从视觉上看,视频从第一应用切换至第二应用时,视频播放窗口由播放终端的部分界面扩展至全部界面,视频内容继续流畅播放。该切换过程中,因为第一应用和第二应用均使用共享播放器,所以第一应用的视频播放窗口和视频资源无需被销毁和重建,因此,该切换过程流畅、无缝,中途没有黑屏现象,无需用户等待。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明一实施例的视频播放的系统架构示意图;

图2是图1中播放终端的播放组件的示意图;

图3是本发明一实施例的视频播放的方法的流程示意图;

图4是图3中第一应用的视频播放时的显示器界面示意图;

图5是图3中第二应用的视频播放时的显示器界面示意图;

图6是本发明一实施例的创建共享播放器的流程示意图;

图7是本发明另一实施例的视频播放的方法的流程示意图;

图8是本发明又一实施例的视频播放的方法的流程示意图。

图9是本发明一实施例的视频播放的装置的结构示意图;

图10是本发明另一实施例的视频播放的装置的结构示意图;

图11是本发明一实施例的视频播放的装置的框架示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

图1是本发明一实施例的视频播放的系统架构示意图。

如图1所示,该系统架构可以包括:播放终端100、路由器200、服务器300和网络500。

其中,播放终端100可以是智能电视、电脑等可以播放视频资源的设备。视频资源可以包括tv信源(有限电视和无线电视)、影视视频等资源,此方面内容不做限制。播放终端100上可以安装用于播放资源的多个应用(如第一应用和第二应用),并可以响应用户400的播放指令或者切换应用的指令,通过应用展示相应资源。播放终端100的本地可以配置有多个组件,如应用管理组件和共享播放器管理组件等。

路由器200可以将播放终端100接入网络500,从而启动各个应用,收看视频等资源。

服务器300可以用于提供tv信源或者网络视频数据等资源,以将其传输给播放终端100。服务器300可以作为播放终端100的云端设备,在云端可以配置有应用播放的管理设备,如app管理设备、播放器的管理设备等。

网络500可以包括局域网和广域网。网络500用以在各种电子设备之间提供通信链路的介质。具体的,网络500可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等。

应该理解,图1中的设备的数目仅仅是示意性的。根据实现需要,进行灵活调整,如取消服务器300,或者增加服务器300的数量。另外,在播放终端100的本地或者在云端配置视频播放的管理设备可以根据本地硬件或者软件的情况进行调整,此方面内容不做限制。

下面各实施例均可以应用于本实施例的系统架构。为了描述简洁,相同或者相似的内容不再赘述,下面各个实施例可以相互参考和引用。

图2是图1中播放终端的播放组件的示意图。

如图2所示,该播放终端100可以包括:应用管理组件101、appa102、appb103、共享播放器管理组件104和共享播放器(sharedplayer)105。用户400可以通过遥控器触发应用切换的指令。

其中,若应用(如appa102和appb103)需要使用共享播放器105或者需要播放窗口,则可以在其应用配置文件中做相应的配置。如,appa102的配置文件a中设置了需要视频播放窗口以及需要共享播放器105的设置。appb103的配置文件b中设置了需要视频窗口以及需要共享播放器105的设置。在每个应用安装时,应用管理组件101可以对应用配置文件做相应的检测、记录,以便用于后续查询。共享播放器管理组件104可以主要用于实现共享播放器105的创建和管理等操作。如,共享播放器管理组件104可以用一个变量参数来记录整个共享播放器105创建和销毁的过程。

本发明实施例可以将播放视频所需要的视频播放窗口和对应的视频资源独立出来,并抽象成为共享播放器105。共享播放器105可以由脱离应用的生命周期的控制,进而可以在应用之间进行播放器共享。共享播放器105可以理解为应用中的视频窗口需要的视频资源和播放能力。其中,视频资源可以是一个视频,也可以某一个tv信源,如模拟电视,数字电视等。

共享播放器105可以由共享播放器管理组件104来执行共享管理。例如,在应用跳转(从appa102跳转至appb103)时,共享播放器管理组件104可以根据目标应用是否需要共享播放器105(通过查询应用管理组件101可知),分如下两种情况对共享播放器105进行管理:

第一种情况,当从appa102跳转到无需共享播放器105的appb103时,为了防止共享播放器105的资源浪费,共享播放器管理组件104需要去判断自己是否持有(如,共享播放器管理组件104可以用一个变量参数来记录整个共享播放器105创建和销毁的过程)共享播放器105。若持有共享播放器105,则要去销毁共享播放器105。若不持有共享播放器105,则无需去销毁共享播放器105。

具体的,可以让应用管理组件101在启动appb103时,查询appb103是否需共享播放器105。如appb103不需要使用共享播放器105,则发送一个销毁通知给共享播放器管理组件104。共享播放器管理组件104在收到该通知后去判断自己是否持有共享播放器105,若持有共享播放器105,则销毁共享播放器105,以此来防止资源浪费。

第二种情况,当从appa102跳转到需药共享播放器105的appb103时,这时不需要使用共享播放器管理组件104去销毁共享播放器105,此时可以由appb103去向共享播放器管理组件104尝试获取共享播放器105。如果获取失败,共享播放器管理组件104可以新创建一个共享播放器105给appb103。具体创建共享播放器105的方法将在下文详细描述。

另外,共享播放器管理组件104可以根据窗口来对共享播放器105进行共享管理。即若系统处于多窗口的情况下,共享播放器105可以在相同的窗口里共享。在不同的窗口中,可以根据窗口号来创建不同的共享播放器105来实现各自窗口的播放器共享。其中,多窗口的情况是播放终端100支持分屏功能时,系统中会有多个窗口用于分屏显示。在各个分屏窗口中,均可以利用共享播放器105来播放视频资源,届时,在各个分屏窗口中会显示于其对应的视频播放窗口。

播放终端100可以执行视频播放的操作。具体视频播放的方法可以从不同的角度来描述,此方面内容不做限制。下面将分别从共享播放器管理组件104的角度,以及从应用管理组件101的角度分别说明视频播放的方法的实现方式。

图3是本发明一实施例的视频播放的方法的流程示意图。

本实施例可以从播放终端100的共享播放器管理组件104的角度来进行描述,其可以应用于共享播放器管理组件104侧,即具体的视频播放的方法的操作执行主体可以是共享播放器管理组件104。可以理解该方法的操作执行主体还可以是其它具体数据处理或者管理功能的处理器或者组件,此方面内容不做限制。

如图3所示,该方法包括以下步骤:s310,接收第一应用使用共享播放器的使用请求;s320,响应于使用请求,向第一应用提供共享播放器,使得第一应用采用共享播放器播放视频资源;s330,在视频资源从第一应用切换至第二应用播放的情况下,向第二应用提供共享播放器,使得第二应用采用共享播放器播放视频资源。

参考图2和图3,本实施例的应用场景可以是:资源或者播放内容(如一段视频)原先在第一应用中播放,随后,将第一应用切换至第二应用,利用第二应用继续播放该视频资源,使得视频资源在这两个应用中平滑、无缝过渡,不存在黑屏现象,无需用户400等待。

具体的,用户400打开播放终端100(如智能电视),发现桌面应用(如appa102)的浏览界面的左侧有个较小的视频播放窗口,该视频播放窗口内播放着智能电视推荐给用户400的视频资源。用户400觉得智能电视推荐的视频资源较好,想观看该视频资源。但由于该桌面应用仅有普通的播放能力(如不提供快进功能,不提供立体声响等),视频播放窗口也较小,所以用户需要将该视频资源切换至直播视频应用(如appb103)中。在该直播视频应用中,视频资源的视频播放窗口可以扩大至整个智能电视的显示界面。另外,扩展的视频播放窗口可以提供丰富的视频播放功能。

图4是图3中第一应用的视频播放时的显示器界面示意图。

第一应用(如appa102)的视频播放时显示界面可以如图4所示。appa102可以是智能电视的桌面应用。该智能电视的显示器界面可以包括:左侧的视频播放窗口,右侧的多种播放类型选择区块。其中,视频播放窗口仅占据智能电视的部分的显示界面,该窗口内播放有“智慧广电宣传视频”的电视推荐视频节目。该视频节目的视频显示区域受到限制,视频播放功能也受到了限制,如不能提供快进功能,不能其他立体声响等。

右侧的多种播放类型选择区块可以包括:直播区块、点播区块、回看区块、影院区块、剧场区块和广电专区等。

图5是图3中第二应用的视频播放时的显示器界面示意图。

第二应用(如appb103)的视频播放时显示界面可以如图5所示。appb103可以是用于播放tv信源的智能电视的多媒体应用。该第二应用可以是直播视频应用,该第二应用的播放能力要大于第一应用。在第二应用该直播视频过程中,视频资源的视频播放窗口可以扩大至整个智能电视的显示界面。另外,扩展的视频播放窗口可以提供丰富的视频播放功能,如快进、后退等功能。

应当理解,在不同的应用场景中,第一应用和第二应用也可以具有相同的播放能力,二者也可以占据相同的视频播放窗口,此方面内容不做限制。

参见图3,在步骤s310中,共享播放器105可以由共享播放器管理组件104预先创建好,也可以实时地根据不同应用的使用请求而临时创建。例如:某时刻,appa102向共享播放器管理组件104发起获取共享播放器105的请求,共享播放器管理组件104可以响应于该使用请求,首先可以判断当前是否存在共享播放器,如果当前存在共享播放器,则可以直接将当前存在的共享播放器供appa102使用;如果当前不存在共享播放器时,为了满足第一应用的使用请求,可以临时创建新的共享播放器105。具体的创建共享播放器105的实现方式可以在下文进行详细描述。

具体的,判断当前是否存在所述共享播放器的实现方式可以包括:

s1,当创建共享播放器或者销毁共享播放器时,记录共享播放器的存在状态。

如,起始时,将用于表示共享播放器存在状态的变量参数设置为一个数值(如0)。之后,每新建1个共享播放器就该变量参数的数值就加1,每销毁1个共享播放器时,该变量参数的数值就减1。

s2,基于存在状态判断当前是否存在共享播放器。

如,根据变量参数的数值,就可以判断当前是否存在共享播放器。如,该数值为0时,可以表示当前没有共享播放器。该数值为1时,可以表示当前有共享播放器。

在步骤s310中,接收第一应用使用共享播放器的使用请求的实现方式可以包括:先由第一应用发给共享播放器管理组件使用共享播放器的使用请求,然后共享播放器管理组件查看第一应用的配置文件,看第一应用是否设置了需要共享播放器的设置。如将movieshare参数设置为inheritor。该设置可以表示接受其它应用的共享请求。在步骤s320中,appa102的共享播放器105的视频播放窗口可以是图4中智能电视界面左侧所示的视频播放窗口。在视频播放窗口中所播放的视频可以是“智慧广电宣传视频”等。

在步骤s320中,共享播放器管理组件104向appa102提供共享播放器105的实现方式可以为:共享播放器管理组件104为appa102提供服务接口(如get接口)。当appa102通过该服务接口发送请求(如get(shareplayer)参数的请求)时,appa102就会得到共享播放器105。其中,get(shareplayer)参数可以表示:获取共享播放器。

在步骤s330中,视频资源从appa102切换至appb103播放的情况可以有多种。例如,共享播放器管理组件104接收将视频资源从appa102切换至appb103的切换请求。响应于该切换请求,共享播放器管理组件104向appb103提供共享播放器105,使得appb103采用共享播放器105播放视频资源。又例如,当视频资源在appa102中播放时,共享播放器管理组件104接收appb103的播放该视频资源的请求。响应于该切换请求,共享播放器管理组件104向appb103提供共享播放器105,此时,appb103就可以采用共享播放器105在其播放窗口中继续播放视频资源。

切换请求可以由用户400通过智能电视的遥控器触发。当appa102切换至appb103时,因为两个应用所用的播放器相同,所以共享播放器105在播放视频资源以及视频播放窗口无需销毁,也无需重建。

在步骤s340中,在appa102切换至appb103之后,共享播放器105继续在共享播放器105的视频播放窗口中播放视频资源,使得应用切换期间,智能电视没有黑屏现象,用户400也无需等待。

由此,上述发明实施例可以通过接收第一应用获取共享播放器的使用请求,向第一应用提供共享播放器。该共享播放器可以由视频播放窗口以及相应播放资源抽象而成。共享播放器可以脱离应用的生命周期的控制,进而可以在应用之间进行播放器共享。第一应用可以采用共享播放器在视频播放窗口中播放视频资源。

上述实施例还可以通过接收将视频资源从第一应用切换至第二应用播放的切换请求,向第二应用提供共享播放器,可以使得第二应用采用共享播放器继续在视频播放窗口中播放视频资源。如此设计从视觉上看,视频从第一应用切换至第二应用时,视频播放窗口由播放终端的部分界面扩展至全部界面,视频内容继续流畅播放。该切换过程中,因为第一应用和第二应用均使用共享播放器,所以第一应用的视频播放窗口和视频资源无需被销毁和重建,因此,该切换过程流畅、无缝,中途没有黑屏现象,无需用户等待。

图6是本发明一实施例的创建共享播放器的流程示意图。

如图6所示,创建共享播放器的实现方式可以包括如下步骤:s610,获取视频资源的属性;s620,根据视频资源的属性选择播放插件;s630,利用播放插件申请用于支持播放插件播放所述视频资源的播放资源;s640,构建视频显示区,设置视频显示区的共享播放管理参数,s650,并生成视频播放窗口;s660,基于播放资源和视频播放窗口,生成共享播放器。

在s610中,视频资源例如可以是数字电视、模拟电视的电视信源,也可以是影视视频,该方面内容不做限制。视频资源的属性电视资源属性,也可以是影视视频资源的属性,具体可以用标识符进行标记。

在s620中,共享播放器管理组件104可以根据播放的内容(视频资源)选择对应的系统插件来提供播放能力。如,电视信源可以选择电视的插件,影视视频可以选择视频的插件。

具体的,根据视频资源的属性确认视频资源是电视信源时,共享播放器管理组件104可以选择与电视资源相匹配的播放插件。根据视频资源的属性确认视频资源是影视视频时,共享播放器管理组件104可以选择与影视视频相匹配的播放插件。具体的,各个插件可以设计成计算系统里的多个功能库。功能库内的每个插件都提供了对应的播放能力,如,一种能力可以为提供电视直播能力,用于提供播放电视信源的能力,另一种能力可以是提供多媒体视频的播放能力。具体的,电视信源中的数字电视的播放能力可以由电视信源相关的功能库来提供,播放多媒体文件的能力由多媒体播放器相关的功能库来提供。

在s630中,共享播放器管理组件104可以通过插件向系统(如电视系统)申请对应播放资源。

具体的,根据播放资源的播放插件,共享播放器管理组件104可以申请用于支持播放插件播放视频资源的播放资源。根据播放资源的播放插件,共享播放器管理组件104可以申请播放资源。

播放资源可以是提供播放能力需要的系统资源,具体的,播放资源可以是计算机、智能电视等用于播放视频资源或者信源等的编码资源、解码资源、调频、滤波等系统的硬件资源。

在s640中,在构件视频显示区的过程中,首先,共享播放器管理组件104可确定待播放的视频需要在显示器的显示位置。如显示在显示器的中间部位、左边部位或者右边部位等位置。然后,共享播放器管理组件104可以确定视频显示区的大小,例如视频显示的长度、宽度以及显示比例等。视频显示区的显示参数可以包括:显示层次参数、显示大小参数、显示位置参数等。共享播放器管理组件104可以调整视频显示区的显示层次、大小和位置等。

另外,共享播放器管理组件104可以使能(enable)播放资源以及视频显示区的共享管理。

在s650中,播放窗口(视频播放窗口)可以包括:视频播放的区域、播放列表以及播放按钮等。播放按钮可以包括:播放、暂停、快进、后退等按钮,此方面内容不做限制。

在s660中,针对不同的视频资源所生成的共享播放器,其播放效果就相当于多个用于播放不同视频资源的播放器。如,用于播放tv信源的播放器和用于播放多媒体视频的播放器。在创建共享播放器时,可以根据不同的视频资源创建相应功能的播放器,以此来节约播放资源,提高播放切换速度。

在一些实施例中,为了节约视频资源,尽量减少创建无效的共享播放器的次数,可以通过共享播放器管理组件104预先读取第一应用的配置文件的数据,然后根据配置文件,判断第一应用是否需要播放窗口(例如文本的文件则无需播放窗口,则说明其无需共享播放器)或者是否需要共享播放器;当第一应用不需要使用播放窗口或者不需要使用共享播放器时,则无需创建共享播放器。当第一应用需要播放窗口时,判断当前是否存在共享播放器。当当前已经存在了共享播放器,则无需再重新创建共享播放器,当当前不具有共享播放器时,此时才需要创建共享播放器。

在一些实施例中,根据配置文件,判断某个应用是否需要共享播放器的实现方式可以包括:

s1,读取配置文件中关于共享播放器的配置参数;

s2,根据配置参数判断第一应用是否需要共享播放器。

其中,配置的参数例如可以是movieshare参数。具体的可以该参数可以设置为:movieshare:inheritor以及movieshare:page://w3ctvosd.tv.yunos.com/index。该设置可表示播放地址为page://w3ctvosd.tv.yunos.com/index的应用需要共享播放器。在一些实施例中,当第一应用不需要使用播放窗口或者不需要使用共享播放器时,共享播放器管理组件104则判断当前是否具有共享播放器105;当前具有共享播放器105时,为了节约视频资源,则发送销毁共享播放器的销毁指令。

在一些实施例中,在第一应用利用共享播放器105播放视频资源时,如果共享播放器管理组件104接收到将视频资源从第一应用切换至第二应用播放的切换请求时,判断第二应用对共享播放器105的共享条件是否满足。其中,共享条件包括:第二应用请求播放的视频资源对应的播放地址与共享播放器播放的视频资源的播放地址相同;或者第二应用请求播放的视频资源对应的播放信源与共享播放器播放的视频资源的播放信源相同。当共享条件满足时,共享播放器管理组件104才向第二应用提供共享播放器105。

图7是本发明另一实施例的视频播放的方法的流程示意图。

本实施例与图3实施例类似,二者区别仅在于描述的角度不同,本实施可以应用于第一应用和第二应用侧,即具体的视频播放的方法的操作执行主体可以是第一应用和第二应用。如图7所示,该方法包括以下步骤:

s710,第一应用发送使用共享播放器播放视频资源的第一使用请求。

s720,在第一使用请求被响应后,第一应用采用共享播放器播放视频资源。

s730,在视频资源从第一应用切换至第二应用播放的情况下,第二应用采用共享播放器播放视频资源。

在一些实施例中,在一些实施例中,视频播放的方法还可以包括:预先检测第一应用的配置文件和/或第二应用的配置文件,得到第一应用和/或第二应用是否需要播放窗口或者是否需要共享播放器的检测结果,使得根据检测结果判断是否需要创建共享播放器。

本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。

本方法将应用播放视频需要的视频播放窗口以及相应播放资源独立出来,抽象成一个共享播放器,用相应共享播放器管理组件来创建和管理,使其脱离了应用生命周期的控制。同时,针对这种播放同一视频的应用间切换,本方法可以有效避免视频播放窗口以及相应播放资源的销毁和重建,解决新应用启动后,视频窗口还需等待一段时间才能继续播放的问题。

需要说明的是,在不冲突的情况下,本领域的技术人员可以按实际需要将上述的操作步骤的顺序进行灵活调整,或者将上述步骤进行灵活组合等操作。为了简明,不再赘述各种实现方式。另外,各实施例的内容可以相互参考引用。

图8是本发明又一实施例的视频播放的方法的流程示意图。

图8主要以播放同一视频的应用a(如appa102)和应用b(如appb103)之间的切换过程为例,详细说明视频播放方法的实现方式。该方法主要包括以下步骤:

s801,开始。

s802,通过应用管理组件101应用管理组件101安装应用(appa102和appb103)。应用管理组件101可以在安装过程中,扫描应用的配置文件,记录该应用是否需要共享播放器。共享播放器管理组件104可以随着系统开机进行自启动,其可以用于后续共享播放器105的管理。

s803,当用户选择appa102进行电视播放,启动appa102。

s804,appa102向共享播放器管理组件104尝试获取共享播放器105。

s805,共享播放器管理组件104判断自己是否已经持有共享播放器105。

s806,若共享播放器管理组件104判断自己已经持有共享播放器105,则共享播放器管理组件104继续对共享条件是否满足要求进行进一步的判断。

共享条件可以包括:第二应用请求播放的视频资源对应的播放地址与共享播放器播放的视频资源的播放地址(如page://w3ctvosd.tv.yunos.com/index")相同;或者第二应用请求播放的视频资源对应的播放信源与共享播放器播放的视频资源的播放信源相同。

其中,播放地址可以是整合了多媒体视频和传统电视的信源,即可以是一个视频的播放地址,也可以是如数字电视、模拟电视、hdmi(多媒体接口)、av(影音设备传输端口)、cvbs(复合视频广播信号)、vga(视频传输标准)等相关信源。

s807,若已有的共享播放器的播放地址同appa102的播放地址相同,则返回已有的共享播放器给appa102。

s808,若已有的共享播放器105的播放地址同appa102的播放地址不同,共享播放器管理组件104需要先释放已有的共享播放器105,再重新创建一个新的共享播放器105返回给appa102。

或者,若共享播放器管理组件104判断自己没有持有共享播放器105,则创建一个新的共享播放器105返回给appa102。

s809,在appa102开始播放视频时,共享播放器管理组件104可以同步记录appa102为当前持有共享播放器的应用,同时记录当前的播放地址等信息。

s810,在appa102中点击相应图标跳转到appb103进行相同电视节目(或视频)的播放。此时,启动appb103,退出appa102。

s811,appb103向共享播放器管理组件104获取共享播放器,进行视频播放。此时,共享播放器管理组件104会判断被启动的appb103是否需要共享播放器。

s812,当appb103需要共享播放器105时,则共享播放器管理组件104继续对共享条件是否满足要求进行进一步的判断。

其中,共享条件可以包括:第二应用请求播放的视频资源对应的播放地址与共享播放器播放的视频资源的播放地址相同;或者第二应用请求播放的视频资源对应的播放信源与共享播放器播放的视频资源的播放信源相同等。s813,当共享条件满足时,返回已有的共享播放器105。

s814,当共享条件不满足时,销毁已有的共享播放器105。

s815,待共享条件满足时,新建的共享播放器105并返回该新建的共享播放器105。

s816,在appb103内继续播放appa102所播放的视频。

s817,当appb103不需要使用共享播放器105时,销毁已有的共享播放器105。

s818,结束。

在一些实施例中,共享播放器管理组件104对共享播放器105的管理可以分为如下的主动方式和被动方式:

被动方式:从appa102跳转到没有视频窗口的appb103时,通过应用管理组件101发送一个销毁通知给共享播放器管理组件104。共享播放器管理组件104在收到该通知后被动的去判断自己是否持有共享播放器105。若持有共享播放器105,则销毁该共享播放器105。

主动方式:从appa102跳转到没有视频窗口的appb103时,共享播放器105的销毁不需得到要应用管理组件101的通知。具体是在appa102在退出时,会在共享播放器管理组件104设置一个标志位,另外在共享播放器管理组件104内部设置一个该标志位的检测器。如果该标志位超时还存在,说明需要销毁共享播放器105,则共享播放器管理组件104就会主动去判断自己是否持有共享播放器105。若持有共享播放器105,则要去销毁该共享播放器105。相应的,当appb103启动时,若appb103需要视频窗口,则需要清除共享播放器管理组件104内部的标志位,以防止共享播放器管理组件104的检测器销毁该共享播放器105。若appb103不需要使用视频窗口或者不需要使用共享播放器时,则需要保留共享播放器管理组件104内部的标志位,以使共享播放器管理组件104销毁共享播放器后自行清除标志位。

图9是本发明一实施例的视频播放的装置的结构示意图。

如图9所示,该视频播放的装置可以包括:接收单元910、第一提供单元920和第二提供单元930。其中,接收单元910可以用于接收第一应用使用共享播放器的使用请求;第一提供单元920可以用于响应于使用请求,向第一应用提供共享播放器,使得第一应用采用共享播放器播放视频资源;第二提供单元930可以用于在视频资源从第一应用切换至第二应用播放的情况下,向第二应用提供共享播放器,使得第二应用采用共享播放器播放视频资源。

在一些实施例中,该视频播放的装置还可以包括:第一创建单元。第一创建单元可以用于响应于使用请求,判断当前是否存在共享播放器;当当前不存在共享播放器时,创建共享播放器。

在一些实施例中,第一创建单元还可以用于:当创建共享播放器或者销毁共享播放器时,记录共享播放器的存在状态;基于存在状态判断当前是否存在共享播放器。

在一些实施例中,第一创建单元还可以用于:根据视频资源的属性,选择播放插件;利用播放插件申请用于支持播放插件播放所述视频资源的播放资源;构建视频显示区;设置视频显示区的共享播放管理参数,并生成视频播放窗口;基于播放资源和视频播放窗口,生成共享播放器。

在一些实施例中,第一创建单元还可以用于:调整视频显示区的如下显示参数中的一种或者多种:显示层次参数、显示大小参数、显示位置参数。

在一些实施例中,该视频播放的装置还可以包括:第二创建单元。第二创建单元可以用于预先读取第一应用的配置文件;根据配置文件,判断第一应用是否需要播放窗口;当第一应用需要播放窗口时,判断当前是否存在共享播放器;当当前不具有共享播放器时,创建共享播放器。

在一些实施例中,第二创建单元还可以用于:读取配置文件中关于共享播放器的配置参数;根据配置参数判断第一应用是否需要共享播放器。

在一些实施例中,该视频播放的装置还可以包括:播放销毁单元。播放销毁单元可以用于当第一应用不需要使用播放窗口或者不需要使用共享播放器时,判断当前是否具有共享播放器;当前具有共享播放器时,发送销毁共享播放器的销毁指令。

在一些实施例中,该视频播放的装置还可以包括:共享判断单元。共享判断单元可以用于响应于切换请求,判断第二应用利用共享播放器的共享条件是否满足;当共享条件满足时,向第二应用发送共享播放器。

在一些实施例中,共享条件可以包括:第二应用的播放地址与共享播放器的播放地址相同。

在一些实施例中,第一应用为对视频资源具有第一播放能力的智能电视的桌面应用;第二应用为对视频资源具有第二播放能力的智能电视的多媒体应用;其中,第一播放能力小于第二播放能力。

图10是本发明另一实施例的视频播放的装置的结构示意图。

如图10所示,该视频播放的装置可以包括:发送单元101、第一播放单元102和第二播放单元103。其中,发送单元101可以用于由第一应用发送使用共享播放器播放视频资源的第一使用请求;第一播放单元102可以用于在第一使用请求被响应后,第一应用采用共享播放器播放视频资源;第二播放单元103可以用于在视频资源从第一应用切换至第二应用播放的情况下,第二应用采用共享播放器播放视频资源。

在一些实施例中,该视频播放的装置还可以包括:配置监测单元。配置监测单元可以用于预先检测第一应用的配置文件和/或第二应用的配置文件,得到第一应用和/或第二应用是否需要播放窗口的检测结果,使得根据检测结果判断是否需要创建共享播放器。

需要说明的是,上述各实施例的装置可作为上述各实施例的用于各实施例的方法中的执行主体,可以实现各个方法中的相应流程,实现相同的技术效果,为了简洁,此方面内容不再赘述。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令,当其在计算机上运行时,使得计算机执行上述各个实施例中描述的方法。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk,ssd)等。

图11是本发明一实施例的视频播放的装置的框架示意图。

如图11所示,该框架可以包括中央处理单元(cpu)111,其可以根据存储在只读存储器(rom)112中的程序或者从存储部分118加载到随机访问存储器(ram)113中的程序而执行图3、图6、图7和图8实施例所做的各种操作。在ram113中,还存储有系统架构操作所需的各种程序和数据。cpu111、rom112以及ram113通过总线114彼此相连。输入/输出(i/o)接口115也连接至总线114。

以下部件连接至i/o接口115:包括键盘、鼠标等的输入部分116;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分117;包括硬盘等的存储部分118;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分119。通信部分909经由诸如因特网的网络执行通信处理。驱动器1110也根据需要连接至i/o接口115。可拆卸介质1111,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1110上,以便于从其上读出的计算机程序根据需要被安装入存储部分118。

特别地,根据本发明的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分119从网络上被下载和安装,和/或从可拆卸介质1111被安装。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

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