CN105933779A - 利用寄生工具包实现的视频播放方法及装置 - Google Patents

利用寄生工具包实现的视频播放方法及装置 Download PDF

Info

Publication number
CN105933779A
CN105933779A CN201610482857.0A CN201610482857A CN105933779A CN 105933779 A CN105933779 A CN 105933779A CN 201610482857 A CN201610482857 A CN 201610482857A CN 105933779 A CN105933779 A CN 105933779A
Authority
CN
China
Prior art keywords
window
video
main application
suspended window
view
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
Application number
CN201610482857.0A
Other languages
English (en)
Inventor
王智源
潘铭达
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201610482857.0A priority Critical patent/CN105933779A/zh
Publication of CN105933779A publication Critical patent/CN105933779A/zh
Priority to PCT/CN2017/090159 priority patent/WO2018001218A1/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/482End-user interface for program selection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47205End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for manipulating displayed content, e.g. interacting with MPEG-4 objects, editing locally
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/485End-user interface for client configuration

Abstract

本发明公开了一种利用寄生工具包实现的视频播放方法及装置。其中寄生工具包与主应用预先绑定,以提供在主应用的用户界面中播放视频的功能,上述方法包括:主应用启动时,在主应用的用户界面中呈现视频播放入口;根据用户触发视频播放入口的行为,创建悬浮窗,在悬浮窗内嵌入视频播放器;其中悬浮窗的尺寸小于主应用的用户界面的尺寸;将服务器提供的视频流传输给视频播放器,以在呈现主应用的用户界面的同时在悬浮窗内播放视频流,实现了呈现主应用的用户界面的同时播放视频,解决了用户只能单独使用其他应用或视频应用,而不能在操作其他应用时同时显示视频应用的界面的缺陷,大大提高了用户操作的简便性,节省用户时间。

Description

利用寄生工具包实现的视频播放方法及装置
技术领域
本发明涉及智能终端技术领域,具体涉及一种利用寄生工具包实现的视频播放方法及装置。
背景技术
随着智能终端的屏幕越来越大、CPU(Central Processing Unit,中央处理器)、内存、GPU(Graphics Processing Unit,图形处理器)等硬件功能越来越强大,用户对应用的需求也越来越高,例如用户希望在操作其他应用的同时能够观看视频。目前,如果终端在运行一个应用的同时想要运行视频应用,终端是需要将当前运行应用的相关操作暂停,或者关闭当前运行应用的应用界面,然后才能切换到另一个应用的应用界面。例如,当用户玩游戏的时候,需要观看视频,用户需要暂停或退出正在玩的游戏才能观看视频;或者,通过设置视频应用和其他应用的界面的显示大小,才能同时显示视频应用和其他应用,用户需要在各个应用的应用界面之间来回切换,给用户的操作带来不便,且并不能实现在显示其他应用的用户界面的同时播放视频。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的利用寄生工具包实现的视频播放方法和相应的利用寄生工具包实现的视频播放装置。
根据本发明的一个方面,提供了一种利用寄生工具包实现的视频播放方法,其中寄生工具包与主应用预先绑定,以提供在主应用的用户界面中播放视频的功能,方法包括:
主应用启动时,在主应用的用户界面中呈现视频播放入口;
根据用户触发视频播放入口的行为,创建悬浮窗,在悬浮窗内嵌入视频播放器;其中悬浮窗的尺寸小于主应用的用户界面的尺寸;
将服务器提供的视频流传输给视频播放器,以在呈现主应用的用户界面的同时在悬浮窗内播放视频流。
根据本发明的另一方面,提供了一种利用寄生工具包实现的视频播放装置,其中寄生工具包与主应用预先绑定,以提供在主应用的用户界面中播放视频的功能,装置包括:
呈现模块,适于主应用启动时,在主应用的用户界面中呈现视频播放入口;
创建模块,适于根据用户触发视频播放入口的行为,创建悬浮窗;
嵌入模块,适于在悬浮窗内嵌入视频播放器;其中悬浮窗的尺寸小于主应用的用户界面的尺寸;
传输模块,适于将服务器提供的视频流传输给视频播放器;
呈现模块还适于:在呈现主应用的用户界面的同时在悬浮窗内播放视频流。
根据本发明提供的方案,通过创建悬浮窗,在悬浮窗内嵌入视频播放器,将服务器提供的视频流传输给视频播放器,实现了呈现主应用的用户界面的同时播放视频,解决了用户只能单独使用其他应用或视频应用,而不能在操作其他应用时同时显示视频应用的界面的缺陷,克服了现有技术中当需要操作其他应用或视频应用时,都需要切换到相应的应用,导致操作不便的问题,大大提高了用户操作的简便性,节省用户时间。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的利用寄生工具包实现的视频播放方法的流程图;
图2示出了根据本发明另一个实施例的利用寄生工具包实现的视频播放方法的流程图;
图3示出了根据本发明一个实施例的利用寄生工具包实现的视频播放装置的结构框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明的发明人在使用一些应用(例如,游戏应用)的过程中发现,在使用这些应用的时候,并不能在显示应用的用户界面的同时还播放视频,即,用户不能在使用这些应用的同时还能观看视频,用户需要另外开启视频应用,然而,视频应用和其他应用并不能同时在移动终端屏幕上显示,在PC终端也需要通过设置视频应用和其他应用的界面的显示大小,才能同时显示视频应用和其他应用,若用户想要对视频应用或其他应用进行操作时,需要将光标定位到相应的应用,这样很容易造成使用不便,为了解决上述问题,发明人经过创造性的劳动,提出了利用寄生工具包,将寄生工具包与主应用预先绑定,以提供在主应用的用户界面中播放视频的功能的解决方案。
其中,主应用是一独立的应用,该应用可以独立实现相应的功能,不需要依赖于任何其他的应用,例如,游戏应用,用户在启动游戏应用后,便可以在游戏应用所提供的用户界面上玩游戏。
而该寄生工具包需要依赖于主应用才可以实现相应的功能,需要主应用调用该寄生工具包的API接口才能实现寄生工具包相应的功能,例如,以在游戏应用播放视频为例,在用户玩游戏的时候可以同时播放视频,这里游戏应用为主应用,播放视频是寄生工具包所实现的功能。
图1示出了根据本发明一个实施例的利用寄生工具包实现的视频播放方法的流程图。如图1所示,该方法包括以下步骤:
步骤S100,主应用启动时,在主应用的用户界面中呈现视频播放入口。
具体地,用户在触发主应用的图标后,启动主应用,启动主应用时,在主应用的用户界面中呈现视频播放入口,其中,视频播放入口可以以浮力球的形式展现。
步骤S101,根据用户触发视频播放入口的行为,创建悬浮窗,在悬浮窗内嵌入视频播放器,其中悬浮窗的尺寸小于主应用的用户界面的尺寸。
具体地,当用户想要在主应用中观看视频时,可以通过触发视频播放入口的方式启动播放视频,在检测到用户触发视频播放入口后,根据用户的该行为,创建Floatwindow。Floatwindow的创建涉及到WindowManager接口,实现类有WindowManagerImpl,CompatModeWrapper,LocalWindowManager。具体地,寄生工具包的代码启动一个Service,然后在Service中创建悬浮窗。
悬浮窗是存在终端屏幕之上的浮动窗口,悬浮窗不隶属于Activity界面,也不受Activity界面的覆盖影响,但与Activity的生命周期相同。在本实施例中,创建的悬浮窗的尺寸小于主应用的用户界面的尺寸。
在创建悬浮窗之后,在悬浮窗内嵌入视频播放器,该视频播放器可以用于显示视频流。
步骤S102,将服务器提供的视频流传输给视频播放器,以在呈现主应用的用户界面的同时在悬浮窗内播放视频流。
具体地,在利用步骤S101在悬浮窗内嵌入视频播放器之后,从服务器获取相应的视频流,将服务器提供的视频流传输给视频播放器,在悬浮窗内播放该视频流,从而在呈现主应用的用户界面的同时播放视频流。
根据本发明上述实施例提供的方法,通过创建悬浮窗,在悬浮窗内嵌入视频播放器,将服务器提供的视频流传输给视频播放器,实现了呈现主应用的用户界面的同时播放视频,解决了用户只能单独使用其他应用或视频应用,而不能在操作其他应用时同时显示视频应用的界面的缺陷,克服了现有技术中当需要操作其他应用或视频应用时,都需要切换到相应的应用,导致操作不便的问题,大大提高了用户操作的简便性,节省用户时间。
图2示出了根据本发明另一个实施例的利用寄生工具包实现的视频播放方法的流程图。如图2所示,该方法包括以下步骤:
步骤S200,主应用启动时,在主应用的用户界面中呈现视频播放入口。
具体地,用户在触发主应用的图标后,启动主应用,启动主应用时,在主应用的用户界面中呈现视频播放入口,其中,视频播放入口可以以浮力球的形式展现。
步骤S201,根据用户触发视频播放入口的行为,创建悬浮窗,设置悬浮窗的窗口位置参数和窗口尺寸参数,使悬浮窗以窗口尺寸参数对应的尺寸显示在窗口位置参数对应的位置,其中,悬浮窗的尺寸小于主应用的用户界面的尺寸。
具体地,当用户想要在主应用中观看视频时,可以通过触发视频播放入口的方式启动播放视频,在检测到用户触发视频播放入口后,根据用户的该行为,创建Floatwindow。Floatwindow的创建涉及到WindowManager接口,实现类有WindowManagerImpl,CompatModeWrapper,LocalWindowManager。具体地,寄生工具包的代码启动一个Service,然后在Service中创建悬浮窗。在创建悬浮窗时,需要设置悬浮窗的窗口位置参数和窗口尺寸参数(包含width和height)。悬浮窗的窗口位置参数和窗口尺寸参数决定了悬浮窗以预设尺寸显示在终端屏幕的预设位置。为了不影响用户使用其他应用,悬浮窗的预设尺寸应小于终端屏幕的尺寸。
悬浮窗是存在终端屏幕之上的浮动窗口,悬浮窗不隶属于Activity界面,也不受Activity界面的覆盖影响,但与Activity的生命周期相同。
步骤S202,在悬浮窗内嵌入第一窗口视图,创建第一窗口视图的绘图表面。
其中,视频播放器通过第一窗口视图来实现。为了能够使该悬浮窗显示用户所启动的视频服务的用户界面,在创建悬浮窗之后,在悬浮窗内嵌入第一窗口视图,该第一窗口视图用于绘制视频界面。这里第一窗口视图可以为任何能够显示视频服务所提供的用户界面的视图,本发明对此不作限制。本实施例以第一窗口视图为surfaceview视图为例进行说明。
在Android系统中,surfaceview具有独立的绘图表面,它不与其宿主窗口共享同一个绘图表面。由于具有独立的绘图表面,因此surfaceview的用户界面可在一个独立的线程中进行绘制,而且又不会占用主线程资源。surfaceview一方面可以实现复杂而高效的UI绘制,另一方面又不会导致用户输入得不到及时响应。因此,使用surfaceview作为窗口视图嵌入到悬浮窗中,可以实现复杂和高效的绘制。
步骤S203,在悬浮窗内嵌入第二窗口视图,第二窗口视图位于第一窗口视图之下;第二窗口视图为非透明的背景视图。
为了克服由于第一窗口视图不能及时刷新而导致的第一窗口视图被透到终端屏幕的缺陷,在悬浮窗内嵌入第二窗口视图,设置第二窗口视图与第一窗口视图的相对位置关系,设定第二窗口视图位于第一窗口视图之下,即位于视频播放器之下,并且第二窗口视图为非透明的背景视图,从而能够解决第一窗口视图被透到终端屏幕的问题。
步骤S204,获取频道标识,将频道标识传输给服务器。
具体地,频道标识用于标示频道,用于对多个频道进行区分。在检测到用户选择相应的频道后,可以利用钩子(hook)函数,获取频道标识,将所获取到的频道标识传输给服务器,以供服务器查找与该频道标识对应的视频流,从而根据用户的需求播放相应的视频。
步骤S205,将服务器提供的与频道标识对应的视频流传输给第一窗口视图。
具体地,服务器在收到传输的频道标识后,根据该频道标识查找与该频道标识匹配的视频流,服务器将查找到的与频道标识匹配的视频流返回给终端,将服务器提供的与频道标识对应的视频流传输给第一窗口视图。
步骤S206,控制第一窗口视图在绘图表面绘制视频流对应的视频界面,以在呈现主应用的用户界面的同时在悬浮窗内播放视频流。
在将服务器提供的与频道标识对应的视频流传输给第一窗口视图之后,寄生工具包控制第一窗口视图在其绘图表面绘制视频流对应的视频界面,在所绘制的视频界面内显示视频流,实现了在呈现主应用的用户界面的同时在悬浮窗内播放视频流。
步骤S207,根据用户触发的移动悬浮窗和/或改变悬浮窗大小的行为,修改悬浮窗的窗口位置参数和/或窗口尺寸参数,根据修改后的窗口位置参数和/或窗口尺寸参数对悬浮窗进行布局。
通过上述步骤创建的悬浮窗占用终端屏幕的一部分显示区域,用于显示用户所启动的视频服务的用户界面。当用户触发移动悬浮窗和/或改变悬浮窗大小时,为了便于用户操作主应用,可修改悬浮窗的窗口位置参数和/或窗口尺寸参数,例如,同时修改悬浮窗的窗口位置参数和窗口尺寸参数,在修改后,使悬浮窗以修改后的窗口尺寸参数对应的尺寸显示在终端屏幕的位置参数对应的位置。例如修改悬浮窗的窗口高度(height)或窗口宽度(width),使悬浮窗缩小,如缩小为原来的三分之一,从而为主应用留出更大的显示空间。
根据本发明上述实施例提供的方法,通过创建悬浮窗,在悬浮窗内嵌入视频播放器,将服务器提供的视频流传输给视频播放器,实现了呈现主应用的用户界面的同时播放视频,解决了用户只能单独使用其他应用或视频应用,而不能在操作其他应用时同时显示视频应用的界面的缺陷,克服了现有技术中当需要操作其他应用或视频应用时,都需要切换到相应的应用,导致操作不便的问题,大大提高了用户操作的简便性,节省用户时间。
图3示出了根据本发明一个实施例的利用寄生工具包实现的视频播放装置的结构框图。如图3所示,该装置包括:呈现模块300、创建模块310、嵌入模块320和传输模块330。
呈现模块300,适于主应用启动时,在主应用的用户界面中呈现视频播放入口。
具体地,用户在触发主应用的图标后,启动主应用,启动主应用时,在主应用的用户界面中呈现视频播放入口,其中,视频播放入口可以以浮力球的形式展现。
创建模块310,适于根据用户触发视频播放入口的行为,创建悬浮窗。
具体地,当用户想要在主应用中观看视频时,可以通过触发视频播放入口的方式启动播放视频,在检测到用户触发视频播放入口后,根据用户的该行为,创建Floatwindow。Floatwindow的创建涉及到WindowManager接口,实现类有WindowManagerImpl,CompatModeWrapper,LocalWindowManager。具体地,寄生工具包的代码启动一个Service,然后在Service中创建悬浮窗。
悬浮窗是存在终端屏幕之上的浮动窗口,悬浮窗不隶属于Activity界面,也不受Activity界面的覆盖影响,但与Activity的生命周期相同。
嵌入模块320,适于在悬浮窗内嵌入视频播放器;其中悬浮窗的尺寸小于主应用的用户界面的尺寸。
传输模块330,适于将服务器提供的视频流传输给视频播放器。
呈现模块300还适于:在呈现主应用的用户界面的同时在悬浮窗内播放视频流。
进一步的,视频播放器通过第一窗口视图来实现;
嵌入模块320进一步适于:在悬浮窗内嵌入第一窗口视图,创建第一窗口视图的绘图表面。
为了能够使该悬浮窗显示用户所启动的视频服务的用户界面,在创建悬浮窗之后,在悬浮窗内嵌入第一窗口视图,该第一窗口视图用于绘制视频界面。这里第一窗口视图可以为任何能够显示视频服务所提供的用户界面的视图,本发明对此不作限制。本实施例以第一窗口视图为surfaceview视图为例进行说明。
在Android系统中,surfaceview具有独立的绘图表面,它不与其宿主窗口共享同一个绘图表面。由于具有独立的绘图表面,因此surfaceview的用户界面可在一个独立的线程中进行绘制,而且又不会占用主线程资源。surfaceview一方面可以实现复杂而高效的UI绘制,另一方面又不会导致用户输入得不到及时响应。因此,使用surfaceview作为窗口视图嵌入到悬浮窗中,可以实现复杂和高效的绘制。
进一步的,呈现模块300进一步适于:控制第一窗口视图在绘图表面绘制视频流对应的视频界面。
进一步的,第一窗口视图为surfaceview视图。
进一步的,嵌入模块320进一步适于:在悬浮窗内嵌入第二窗口视图,第二窗口视图位于视频播放器之下;第二窗口视图为非透明的背景视图。
为了克服由于第一窗口视图不能及时刷新而导致的第一窗口视图被透到终端屏幕的缺陷,在悬浮窗内嵌入第二窗口视图,设置第二窗口视图与第一窗口视图的相对位置关系,设定第二窗口视图位于第一窗口视图之下,即位于视频播放器之下,并且第二窗口视图为非透明的背景视图,从而能够解决第一窗口视图被透到终端屏幕的问题。
进一步的,该装置还包括:获取模块340,适于获取频道标识,将频道标识传输给服务器。
具体地,频道标识用于标示频道,用于对多个频道进行区分。在检测到用户选择相应的频道后,可以利用钩子(hook)函数,获取频道标识,将所获取到的频道标识传输给服务器,以供服务器查找与该频道标识对应的视频流,从而根据用户的需求播放相应的视频。
传输模块330进一步适于:将服务器提供的与频道标识对应的视频流传输给视频播放器。
具体地,服务器在收到传输的频道标识后,根据该频道标识查找与该频道标识匹配的视频流,服务器将查找到的与频道标识匹配的视频流返回给终端,将服务器提供的与频道标识对应的视频流传输给第一窗口视图。
进一步的,创建模块310进一步适于:设置悬浮窗的窗口位置参数和窗口尺寸参数,使悬浮窗以窗口尺寸参数对应的尺寸显示在窗口位置参数对应的位置。
在创建悬浮窗时,需要设置悬浮窗的窗口位置参数和窗口尺寸参数(包含width和height)。悬浮窗的窗口位置参数和窗口尺寸参数决定了悬浮窗以预设尺寸显示在终端屏幕的预设位置。为了不影响用户使用其他应用,悬浮窗的预设尺寸应小于终端屏幕的尺寸。
进一步的,该装置还包括:修改模块350,适于根据用户触发的移动悬浮窗和/或改变悬浮窗大小的行为,修改悬浮窗的窗口位置参数和/或窗口尺寸参数;
布局模块360,适于根据修改后的窗口位置参数和/或窗口尺寸参数对悬浮窗进行布局。
通过上述步骤创建的悬浮窗占用终端屏幕的一部分显示区域,用于显示用户所启动的视频服务的用户界面。当用户触发移动悬浮窗和/或改变悬浮窗大小时,为了便于用户操作主应用,可修改悬浮窗的窗口位置参数和/或窗口尺寸参数,例如,同时修改悬浮窗的窗口位置参数和窗口尺寸参数,在修改后,使悬浮窗以修改后的窗口尺寸参数对应的尺寸显示在终端屏幕的位置参数对应的位置。例如修改悬浮窗的窗口高度(height)或窗口宽度(width),使悬浮窗缩小,如缩小为原来的三分之一,从而为主应用留出更大的显示空间。
根据本发明上述实施例提供的装置,通过创建悬浮窗,在悬浮窗内嵌入视频播放器,将服务器提供的视频流传输给视频播放器,实现了呈现主应用的用户界面的同时播放视频,解决了用户只能单独使用其他应用或视频应用,而不能在操作其他应用时同时显示视频应用的界面的缺陷,克服了现有技术中当需要操作其他应用或视频应用时,都需要切换到相应的应用,导致操作不便的问题,大大提高了用户操作的简便性,节省用户时间。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的利用寄生工具包实现的视频播放设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了:A1、一种利用寄生工具包实现的视频播放方法,其中所述寄生工具包与主应用预先绑定,以提供在所述主应用的用户界面中播放视频的功能,所述方法包括:
主应用启动时,在主应用的用户界面中呈现视频播放入口;
根据用户触发所述视频播放入口的行为,创建悬浮窗,在悬浮窗内嵌入视频播放器;其中所述悬浮窗的尺寸小于所述主应用的用户界面的尺寸;
将服务器提供的视频流传输给所述视频播放器,以在呈现所述主应用的用户界面的同时在所述悬浮窗内播放所述视频流。
A2、根据A1所述的方法,其中,所述视频播放器通过第一窗口视图来实现;
所述在悬浮窗内嵌入视频播放器进一步包括:在悬浮窗内嵌入第一窗口视图,创建第一窗口视图的绘图表面。
A3、根据A2所述的方法,其中,所述在悬浮窗内播放所述视频流进一步包括:控制所述第一窗口视图在绘图表面绘制所述视频流对应的视频界面。
A4、根据A2或A3所述的方法,其中,所述第一窗口视图为surfaceview视图。
A5、根据A1-A4任一项所述的方法,其中,所述方法还包括:
在所述悬浮窗内嵌入第二窗口视图,所述第二窗口视图位于所述视频播放器之下;所述第二窗口视图为非透明的背景视图。
A6、根据A1-A5任一项所述的方法,其中,在所述将服务器提供的视频流传输给所述视频播放器之前,所述方法还包括:获取频道标识,将所述频道标识传输给服务器;
所述将服务器提供的视频流传输给所述视频播放器进一步包括:将服务器提供的与所述频道标识对应的视频流传输给所述视频播放器。
A7、根据A1-A6任一项所述的方法,其中,在创建悬浮窗的过程中,所述方法还包括:设置所述悬浮窗的窗口位置参数和窗口尺寸参数,使所述悬浮窗以所述窗口尺寸参数对应的尺寸显示在所述窗口位置参数对应的位置。
A8、根据A7所述的方法,其中,在所述悬浮窗播放所述视频流的之后,所述方法还包括:
根据用户触发的移动悬浮窗和/或改变悬浮窗大小的行为,修改所述悬浮窗的窗口位置参数和/或窗口尺寸参数,根据修改后的窗口位置参数和/或窗口尺寸参数对所述悬浮窗进行布局。
本发明还公开了:B9、一种利用寄生工具包实现的视频播放装置,其中所述寄生工具包与主应用预先绑定,以提供在所述主应用的用户界面中播放视频的功能,所述装置包括:
呈现模块,适于主应用启动时,在主应用的用户界面中呈现视频播放入口;
创建模块,适于根据用户触发所述视频播放入口的行为,创建悬浮窗;
嵌入模块,适于在悬浮窗内嵌入视频播放器;其中所述悬浮窗的尺寸小于所述主应用的用户界面的尺寸;
传输模块,适于将服务器提供的视频流传输给所述视频播放器;
所述呈现模块还适于:在呈现所述主应用的用户界面的同时在所述悬浮窗内播放所述视频流。
B10、根据B9所述的装置,其中,所述视频播放器通过第一窗口视图来实现;
所述嵌入模块进一步适于:在悬浮窗内嵌入第一窗口视图,创建第一窗口视图的绘图表面。
B11、根据B10所述的装置,其中,所述呈现模块进一步适于:控制所述第一窗口视图在绘图表面绘制所述视频流对应的视频界面。
B12、根据B10或B11所述的装置,其中,所述第一窗口视图为surfaceview视图。
B13、根据B9-B12任一项所述的装置,其中,所述嵌入模块进一步适于:在所述悬浮窗内嵌入第二窗口视图,所述第二窗口视图位于所述视频播放器之下;所述第二窗口视图为非透明的背景视图。
B14、根据B9-B13任一项所述的装置,其中,所述装置还包括:获取模块,适于获取频道标识,将所述频道标识传输给服务器;
所述传输模块进一步适于:将服务器提供的与所述频道标识对应的视频流传输给所述视频播放器。
B15、根据B9-B14任一项所述的装置,其中,所述创建模块进一步适于:设置所述悬浮窗的窗口位置参数和窗口尺寸参数,使所述悬浮窗以所述窗口尺寸参数对应的尺寸显示在所述窗口位置参数对应的位置。
B16、根据B15所述的装置,其中,所述装置还包括:修改模块,适于根据用户触发的移动悬浮窗和/或改变悬浮窗大小的行为,修改所述悬浮窗的窗口位置参数和/或窗口尺寸参数;
布局模块,适于根据修改后的窗口位置参数和/或窗口尺寸参数对所述悬浮窗进行布局。

Claims (10)

1.一种利用寄生工具包实现的视频播放方法,其中所述寄生工具包与主应用预先绑定,以提供在所述主应用的用户界面中播放视频的功能,所述方法包括:
主应用启动时,在主应用的用户界面中呈现视频播放入口;
根据用户触发所述视频播放入口的行为,创建悬浮窗,在悬浮窗内嵌入视频播放器;其中所述悬浮窗的尺寸小于所述主应用的用户界面的尺寸;
将服务器提供的视频流传输给所述视频播放器,以在呈现所述主应用的用户界面的同时在所述悬浮窗内播放所述视频流。
2.根据权利要求1所述的方法,其中,所述视频播放器通过第一窗口视图来实现;
所述在悬浮窗内嵌入视频播放器进一步包括:在悬浮窗内嵌入第一窗口视图,创建第一窗口视图的绘图表面。
3.根据权利要求2所述的方法,其中,所述在悬浮窗内播放所述视频流进一步包括:控制所述第一窗口视图在绘图表面绘制所述视频流对应的视频界面。
4.根据权利要求2或3所述的方法,其中,所述第一窗口视图为surfaceview视图。
5.根据权利要求1-4任一项所述的方法,其中,所述方法还包括:
在所述悬浮窗内嵌入第二窗口视图,所述第二窗口视图位于所述视频播放器之下;所述第二窗口视图为非透明的背景视图。
6.根据权利要求1-5任一项所述的方法,其中,在所述将服务器提供的视频流传输给所述视频播放器之前,所述方法还包括:获取频道标识,将所述频道标识传输给服务器;
所述将服务器提供的视频流传输给所述视频播放器进一步包括:将服务器提供的与所述频道标识对应的视频流传输给所述视频播放器。
7.根据权利要求1-6任一项所述的方法,其中,在创建悬浮窗的过程中,所述方法还包括:设置所述悬浮窗的窗口位置参数和窗口尺寸参数,使所述悬浮窗以所述窗口尺寸参数对应的尺寸显示在所述窗口位置参数对应的位置。
8.根据权利要求7所述的方法,其中,在所述悬浮窗播放所述视频流的之后,所述方法还包括:
根据用户触发的移动悬浮窗和/或改变悬浮窗大小的行为,修改所述悬浮窗的窗口位置参数和/或窗口尺寸参数,根据修改后的窗口位置参数和/或窗口尺寸参数对所述悬浮窗进行布局。
9.一种利用寄生工具包实现的视频播放装置,其中所述寄生工具包与主应用预先绑定,以提供在所述主应用的用户界面中播放视频的功能,所述装置包括:
呈现模块,适于主应用启动时,在主应用的用户界面中呈现视频播放入口;
创建模块,适于根据用户触发所述视频播放入口的行为,创建悬浮窗;
嵌入模块,适于在悬浮窗内嵌入视频播放器;其中所述悬浮窗的尺寸小于所述主应用的用户界面的尺寸;
传输模块,适于将服务器提供的视频流传输给所述视频播放器;
所述呈现模块还适于:在呈现所述主应用的用户界面的同时在所述悬浮窗内播放所述视频流。
10.根据权利要求9所述的装置,其中,所述视频播放器通过第一窗口视图来实现;
所述嵌入模块进一步适于:在悬浮窗内嵌入第一窗口视图,创建第一窗口视图的绘图表面。
CN201610482857.0A 2016-06-27 2016-06-27 利用寄生工具包实现的视频播放方法及装置 Pending CN105933779A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201610482857.0A CN105933779A (zh) 2016-06-27 2016-06-27 利用寄生工具包实现的视频播放方法及装置
PCT/CN2017/090159 WO2018001218A1 (zh) 2016-06-27 2017-06-27 视频播放方法、装置、程序及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610482857.0A CN105933779A (zh) 2016-06-27 2016-06-27 利用寄生工具包实现的视频播放方法及装置

Publications (1)

Publication Number Publication Date
CN105933779A true CN105933779A (zh) 2016-09-07

Family

ID=56828519

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610482857.0A Pending CN105933779A (zh) 2016-06-27 2016-06-27 利用寄生工具包实现的视频播放方法及装置

Country Status (2)

Country Link
CN (1) CN105933779A (zh)
WO (1) WO2018001218A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106792089A (zh) * 2016-12-15 2017-05-31 腾讯科技(深圳)有限公司 视频播放方法和装置
CN106803978A (zh) * 2017-03-16 2017-06-06 上海青橙实业有限公司 移动终端以及基于悬浮窗口播放视频的方法
WO2018001218A1 (zh) * 2016-06-27 2018-01-04 北京奇虎科技有限公司 视频播放方法、装置、程序及介质
CN110928460A (zh) * 2019-10-09 2020-03-27 广州视源电子科技股份有限公司 智能交互平板的操作方法、装置、终端设备和存储介质
WO2022183331A1 (zh) * 2021-03-01 2022-09-09 京东方科技集团股份有限公司 界面显示方法及装置、计算机可读存储介质及电子设备
WO2023061159A1 (zh) * 2021-10-15 2023-04-20 腾讯科技(深圳)有限公司 视频播放方法、装置、终端、存储介质及程序产品

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111385240A (zh) * 2018-12-27 2020-07-07 北京奇虎科技有限公司 一种网络内设备接入的提醒方法、装置和计算设备
CN113411683B (zh) * 2021-06-23 2022-07-22 北京奇艺世纪科技有限公司 一种视频播放方法及装置
CN113727133B (zh) * 2021-08-31 2023-04-28 广州方硅信息技术有限公司 直播控制方法及其装置、设备与介质
CN113727177B (zh) * 2021-08-31 2024-01-19 广州方硅信息技术有限公司 投屏资源播放方法及其装置、设备与介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010064774A1 (ko) * 2008-12-02 2010-06-10 (주)엘지전자 3차원 영상신호 전송 방법과, 3차원 영상표시 장치 및 그에 있어서의 신호 처리 방법
CN103049258A (zh) * 2012-12-10 2013-04-17 乐视网信息技术(北京)股份有限公司 一种基于安卓操作系统控制视频播放的方法及系统
US20140082498A1 (en) * 2012-08-02 2014-03-20 Tencent Technology (Shenzhen) Company Limited Method and mobile terminal device for independently playing a video
CN105187939A (zh) * 2015-09-21 2015-12-23 合一网络技术(北京)有限公司 一种实现网页游戏中播放视频的方法及装置
CN105554553A (zh) * 2015-12-15 2016-05-04 腾讯科技(深圳)有限公司 通过悬浮窗口播放视频的方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105933779A (zh) * 2016-06-27 2016-09-07 北京奇虎科技有限公司 利用寄生工具包实现的视频播放方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010064774A1 (ko) * 2008-12-02 2010-06-10 (주)엘지전자 3차원 영상신호 전송 방법과, 3차원 영상표시 장치 및 그에 있어서의 신호 처리 방법
US20140082498A1 (en) * 2012-08-02 2014-03-20 Tencent Technology (Shenzhen) Company Limited Method and mobile terminal device for independently playing a video
CN103049258A (zh) * 2012-12-10 2013-04-17 乐视网信息技术(北京)股份有限公司 一种基于安卓操作系统控制视频播放的方法及系统
CN105187939A (zh) * 2015-09-21 2015-12-23 合一网络技术(北京)有限公司 一种实现网页游戏中播放视频的方法及装置
CN105554553A (zh) * 2015-12-15 2016-05-04 腾讯科技(深圳)有限公司 通过悬浮窗口播放视频的方法及装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018001218A1 (zh) * 2016-06-27 2018-01-04 北京奇虎科技有限公司 视频播放方法、装置、程序及介质
CN106792089A (zh) * 2016-12-15 2017-05-31 腾讯科技(深圳)有限公司 视频播放方法和装置
CN106803978A (zh) * 2017-03-16 2017-06-06 上海青橙实业有限公司 移动终端以及基于悬浮窗口播放视频的方法
CN110928460A (zh) * 2019-10-09 2020-03-27 广州视源电子科技股份有限公司 智能交互平板的操作方法、装置、终端设备和存储介质
US11620047B2 (en) 2019-10-09 2023-04-04 Guangzhou Shiyuan Electronic Technology Company Limited Method, apparatus, terminal device, and storage medium for operating interactive white board
WO2022183331A1 (zh) * 2021-03-01 2022-09-09 京东方科技集团股份有限公司 界面显示方法及装置、计算机可读存储介质及电子设备
US11907503B2 (en) 2021-03-01 2024-02-20 Boe Technology Group Co., Ltd. Switching display of page between a window of a graphical user interface and an independent child window
WO2023061159A1 (zh) * 2021-10-15 2023-04-20 腾讯科技(深圳)有限公司 视频播放方法、装置、终端、存储介质及程序产品

Also Published As

Publication number Publication date
WO2018001218A1 (zh) 2018-01-04

Similar Documents

Publication Publication Date Title
CN105933779A (zh) 利用寄生工具包实现的视频播放方法及装置
CN105915933A (zh) 利用寄生工具包实现的视频推送方法及装置
CN105915993A (zh) 利用寄生工具包实现的视频播放模式设置方法及装置
CN105867815A (zh) 一种分屏显示方法及装置
CN102830964B (zh) 一种显示多任务界面的方法及装置
CN103164839A (zh) 一种绘图方法、装置及终端
JP2016540322A (ja) ディスプレイ装置及びディスプレイ装置のモーション認識方法
CN104423820A (zh) 锁屏壁纸更换方法及装置
CN106897081A (zh) 应用的引导方法及装置、终端
CN106658139B (zh) 一种焦点控制方法及装置
WO2016023265A1 (zh) 分屏模式下的窗口显示处理方法、电子设备和存储介质
CN110300328A (zh) 一种视频播放控制方法、装置及可读存储介质
CN105138355A (zh) 应用程序的界面中元素的插入方法及装置、电子设备
CN102214107B (zh) 在客户端程序中的Flash换肤换色方法和装置
CN102012805A (zh) 一种自定义光标的实现方法及装置
CN104281426A (zh) 一种图像显示方法及装置
CN105487854A (zh) 锁屏界面图片的更新方法、系统和移动终端
CN104936041A (zh) 一种自定义机顶盒状态栏的方法及系统
CN103227955B (zh) 显示设备、升级设备、其控制方法和显示系统
CN107820630A (zh) 显示装置和显示方法
KR20080009978A (ko) 이동통신 단말기의 메뉴화면 구성 방법
CN105516782A (zh) Android系统智能电视悬浮界面互斥功能的实现方法及系统
CN104346216A (zh) 电子设备的多任务执行方法和设备
CN103686416B (zh) 智能电视中的3d设置信息处理方法及装置
EP2309458B1 (en) Semiconductor integrated circuit device, facility apparatus control device, and apparatus state display device

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20160907