CN112770168A - 视频的播放方法以及相关装置、设备 - Google Patents
视频的播放方法以及相关装置、设备 Download PDFInfo
- Publication number
- CN112770168A CN112770168A CN202011539579.0A CN202011539579A CN112770168A CN 112770168 A CN112770168 A CN 112770168A CN 202011539579 A CN202011539579 A CN 202011539579A CN 112770168 A CN112770168 A CN 112770168A
- Authority
- CN
- China
- Prior art keywords
- playing
- video
- target video
- interface container
- carrier
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/472—End-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/47202—End-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 requesting content on demand, e.g. video on demand
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/482—End-user interface for program selection
- H04N21/4825—End-user interface for program selection using a list of items to be played back in a given order, e.g. playlists
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/485—End-user interface for client configuration
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Databases & Information Systems (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
本申请公开了视频的播放方法以及相关装置、设备,其中,视频的播放方法包括:获取到目标视频的播放指令;基于播放指令对目标视频的视频数据进行拉取;以及基于播放指令创建目标视频的界面容器;加载目标视频的界面容器的布局内容,延时加载显示目标视频之外的界面容器的布局内容,并设置与界面容器对应的播放载体;将加载完成后的目标视频的布局内容添加至界面容器中,通过播放载体展示布局内容,并通过播放载体基于视频数据对目标视频进行播放。上述方案,能够提高视频播放的速度和效率。
Description
技术领域
本申请涉及视频播放的技术领域,特别是涉及视频的播放方法以及相关装置、设备。
背景技术
随着互联网技术的高速发展,人们所能体验到的互联网娱乐方式越来越多样化,其中,观看视频已经成为人们休闲时间中必不可少的娱乐活动。人们通过观看点播视频和/或直播视频来进行休闲娱乐。
但在各式视频的播放过程中,视频首帧时间的开启快慢直接影响用户观看视频的体验。而在海外、网络较差或用户终端性能较低的情况下视频的首帧的秒开率往往很低。
目前,亟需一种视频的播放方法来提高视频的首帧的开启速度和秒开率。
发明内容
本申请提供了视频的播放方法以及相关装置、设备,以解决现有技术中存在的视频的首帧的开启速度较低的问题。
本申请提供了一种视频的播放方法,包括:获取到目标视频的播放指令;基于播放指令对目标视频的视频数据进行拉取;以及基于播放指令创建目标视频的界面容器;加载目标视频的界面容器的布局内容,延时加载显示目标视频之外的界面容器的布局内容,并设置与界面容器对应的播放载体;将加载完成后的目标视频的布局内容添加至界面容器中,通过播放载体展示布局内容,并通过播放载体基于视频数据对目标视频进行播放。
其中,视频数据包括音频数据和画面数据;基于播放指令对目标视频的视频数据进行拉取的步骤之后,将加载完成后的目标视频的布局内容添加至界面容器中,通过播放载体展示布局内容,并通过播放载体基于视频数据对目标视频进行播放的步骤之前,包括:通过播放器播放音频数据,并舍弃已播放的音频数据对应的画面数据;通过播放载体基于视频数据对目标视频进行播放的步骤,包括:通过播放载体显示与当前播放的音频数据对应的画面数据。
其中,通过播放载体显示与当前播放的音频数据对应的画面数据的步骤,包括:获取到当前播放的音频数据对应的图像帧的画面数据;将图像帧的画面数据渲染到目标视频的布局内容中,通过播放载体进行播放。
其中,获取到目标视频的播放指令的步骤之前,包括:对各视频进行域名解析,得到各视频对应的播放地址;基于播放指令对目标视频的视频数据进行拉取的步骤,包括:基于播放指令,利用目标视频的播放地址对目标视频的视频数据进行拉取,得到视频数据。
其中,对各视频进行域名解析,得到各视频对应的播放地址的步骤,还包括:形成各视频的播放列表;获取到目标视频的播放指令的步骤包括:响应于用户点击播放列表的动作指令获取到播放指令。
其中,将加载完成后的目标视频的布局内容添加至界面容器中,通过播放载体展示布局内容,并通过播放载体基于视频数据对目标视频进行播放的步骤,包括:目标视频之外的界面容器的布局内容加载完成后,通过播放载体进行显示。
其中,加载目标视频的界面容器的布局内容,延时加载显示目标视频之外的界面容器的布局内容的步骤,包括:通过new方法创建各布局内容的视图,并基于视图生成各布局内容的layout;通过addView方式将layout添加到各布局内容对应的Fragment中,得到界面容器的各布局内容。
本申请还提供了一种视频的播放装置,包括:获取模块,用于获取到目标视频的播放指令;拉取模块,用于基于播放指令对目标视频的视频数据进行拉取;以及基于播放指令创建目标视频的界面容器;加载模块,用于加载目标视频的界面容器的布局内容,延时加载显示目标视频之外的界面容器的布局内容,并设置与界面容器对应的播放载体;播放模块,用于将加载完成后的目标视频的布局内容添加至界面容器中,通过播放载体展示布局内容,并通过播放载体基于视频数据对目标视频进行播放。
本申请还提供了一种电子设备,包括相互耦接的存储器和处理器,处理器用于执行存储器中存储的程序指令,以实现上述任一项的视频的播放方法。
本申请还提供了一种计算机可读存储介质,其上存储有程序指令,程序指令被处理器执行时实现上述任一项的视频的播放方法。
上述方案,本申请通过基于播放指令分别对目标视频的视频数据进行拉取以及基于播放指令创建目标视频的界面容器,从而在播放载体设置完成之前,对目标视频的视频数据进行拉流,减少在播放载体设置完成后才进行拉流所产生的时间消耗。本实施例还在加载目标视频的界面容器的布局内容时,延时加载显示目标视频之外的界面容器的布局内容,并设置与界面容器对应的播放载体,从而减少显示目标视频之外的界面容器的布局内容的加载对播放载体的设置的硬件性能消耗的影响,从而提高播放载体设置的速度,减少设置播放载体的时间消耗,最后本申请将加载完成后的目标视频的布局内容添加至界面容器中,通过播放载体展示布局内容,并通过播放载体基于视频数据对目标视频进行播放,实现目标视频的播放。本申请能够全面提高视频播放的速度和效率,提高视频开启的秒开率。
附图说明
图1是本申请视频的播放方法一实施例的流程示意图;
图2是本申请视频的播放方法另一实施例的流程示意图;
图3是图2实施例中Activity的界面显示的示意图;
图4是本申请视频的播放装置一实施例的框架示意图;
图5是本申请电子设备一实施例的框架示意图;
图6为本申请计算机可读存储介质一实施例的框架示意图。
具体实施方式
下面结合说明书附图,对本申请实施例的方案进行详细说明。
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透彻理解本申请。
本文中术语“系统”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,可以存在三种关系,例如,A和/或B,可以:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般前后关联对象是一种“或”的关系。此外,本文中的“多”两个或者多于两个。
请参阅图1,图1是本申请视频的播放方法一实施例的流程示意图。具体而言,可以包括如下步骤:
步骤S11:获取到目标视频的播放指令。
本实施例的目标视频可以包括点播视频和直播视频。其中,点播视频是指服务端存放多个视频文件,客户可通过网络点播客户端来观看并可拖动进度进行观看的视频形式。直播视频是指服务端实时发送直播来源(如系统桌面、摄像头)的数据流,客户端通过支持流媒体协议的播放器实时播放同样的内容,且不可拖动进度的视频形式。
在一个具体的应用场景中,可以将多个点播视频和/或直播视频推送至客户端,以接收到用户点击某个视频的信息,即获取到用户对目标视频的播放指令。
步骤S12:基于播放指令对目标视频的视频数据进行拉取,以及基于播放指令创建目标视频的界面容器。
基于用户的播放指令从服务器或视频存储平台拉取目标视频的视频数据。其中,在一个具体的应用场景中,当目标视频为点播视频时,本步骤的视频数据可以是整个点播视频的全部视频数据。在另一个具体的应用场景中,当目标视频为直播视频时,本步骤的视频数据可以是直播视频的实时视频数据。
本步骤还基于用户的播放指令创建目标视频的界面容器,以通过界面容器实现目标视频的播放以及设置播放界面的功能区域。其中,创建目标视频的界面容器的步骤和视频数据的拉取步骤都是响应于获取到用户的播放指令进行的,两个步骤并列进行。
步骤S13:加载目标视频的界面容器的布局内容,延时加载显示目标视频之外的界面容器的布局内容,并设置与界面容器对应的播放载体。
基于播放指令创建目标视频的界面容器后,加载目标视频的界面容器的布局内容,其中,延时加载显示目标视频之外的界面容器的布局内容。本步骤还需要设置与界面容器对应的播放载体,播放载体用于承载播放界面功能区域的相关数据以及视频数据,以向用户展示各功能区域和基于视频数据播放视频。
在一个具体的应用场景中,当界面容器包括用于显示目标视频的一个第一组件和用于显示目标视频之外的数个第二组件时,先加载界面容器的第一组件的布局内容,而用于显示目标视频之外的数个第二组件的布局内容异步并延时加载,从而减少设置与界面容器对应的播放载体时所需的硬件性能消耗,进而加快设置与界面容器对应的播放载体的速度,减少消耗时间。
步骤S14:将加载完成后的目标视频的布局内容添加至界面容器中,通过播放载体展示布局内容,并通过播放载体基于视频数据对目标视频进行播放。
将加载完成后的目标视频的第一组件的布局内容添加至界面容器中,通过播放载体基于步骤S12中拉取到的视频数据对目标视频进行播放,同时通过已设置完成的播放载体展示第一组件的布局内容,从而实现目标视频的视频播放。
当播放载体设置完成、第一组件的布局内容加载完成并添加至界面容器以及视频数据拉取成功后,即可通过播放载体按照第一组件的布局内容将视频数据进行播放。在一个具体的应用场景中,如果数个第二组件的布局内容如果未加载完成,则继续加载。如果已加载完成,则将第二组件的布局内容添加至界面容器中进行展示。在另一个具体的应用场景中,也可以在步骤S13中只加载目标视频的界面容器的第一组件的布局内容,在播放载体设置完成后,再继续加载第二组件的布局内容,以减少播放载体设置过程中的硬件资源消耗,减少播放载体的设置时间。
通过上述步骤,本实施例的视频的播放方法,通过基于播放指令分别对目标视频的视频数据进行拉取以及基于播放指令创建目标视频的界面容器,从而在播放载体设置完成之前,对目标视频的视频数据进行拉流,减少在播放载体设置完成后才进行拉流所产生的时间消耗。本实施例还在加载目标视频的界面容器的布局内容时,延时加载显示目标视频之外的界面容器的布局内容,并设置与界面容器对应的播放载体,从而减少显示目标视频之外的界面容器的布局内容的加载对播放载体的设置的硬件性能消耗的影响,从而提高播放载体设置的速度,减少设置播放载体的时间消耗,最后本实施例将加载完成后的目标视频的布局内容添加至界面容器中,通过播放载体展示布局内容,并通过播放载体基于视频数据对目标视频进行播放,实现目标视频的播放。本实施例能够全面提高视频播放的速度和效率,提高视频开启的秒开率。
请参阅图2,图2是本申请视频的播放方法另一实施例的流程示意图。本实施例应用于直播视频的开启方法,具体而言,可以包括如下步骤:
步骤S21:对各视频进行域名解析,得到各视频对应的播放地址。
对各直播视频进行域名解析,得到各直播视频对应的IP地址。在一个具体的应用场景中,可以通过构建一个映射表,将各直播视频的域名以及IP地址提前进行解析对应,这样用户在点击目标视频后,可以直接通过查询该映射表构建出目标视频的直播间的IP地址,并通过该地址进行拉流。其中,本步骤的映射表的创建并不仅只针对单次目标视频的播放,而是长期应用于各个直播间的拉流步骤,以提前对各直播视频进行DNS预解析,节省获取到目标视频的播放指令之后再进行域名解析的时间消耗。
步骤S22:获取到目标视频的播放指令。
在一个具体的应用场景中,可以形成直播视频的播放列表,并向用户进行展示,播放列表中可以包括多个直播视频。响应于用户点击播放列表中某个视频的动作指令获取到目标视频的播放指令。在一个具体的应用场景中,也可以基于用户精准搜索场景下,向用户推送目标视频,响应于用户点击目标视频的动作指令获取到目标视频的播放指令。
步骤S23:基于播放指令创建目标视频的界面容器。
基于用户的播放指令调用系统资源创建目标视频的界面容器Activity,其中,本实施例中Activity用于提供一个屏幕,以向用户展示视频以及提供交互功能。Activity具体可以是一个控件的容器,里面装载着各种各样的控件来实现各种交互功能。
步骤S24:加载目标视频的界面容器的布局内容,延时加载显示目标视频之外的界面容器的布局内容,并设置与界面容器对应的播放载体。
异步加载目标视频的界面容器的各布局内容,并设置与界面容器对应的播放载体。其中,优先加载显示目标视频的界面容器的布局内容,延时加载显示目标视频之外的界面容器的布局内容。
在一个具体的应用场景中,可以通过new方法创建各布局内容的视图(View),基于视图(View)生成各布局内容的layout,并通过addView的方式将layout添加到各布局内容对应的Fragment中,得到界面容器的各布局内容。其中,视图(View)是安卓系统应用层界面可视化的基本组件单元。Fragment是Activity中用户界面的一个行为或者是一部分。可以在一个单独的Activity上把多个Fragment组合成为一个多区域的UI,并且可以在多个Activity中再使用。Fragment的生命周期直接受其宿主Activity的生命周期的影响。而addView是ViewGroup中特有的添加方法。new方法是指通过使用new关键字的方式创建视图(View)。
在一个具体的应用场景中,加载布局内容的步骤可以为通过new方法的方式创建View,由多个View组成各Fragment对应的layout,通过addView的方式将layout对应添加到Fragment中,从而实现Activity中各Fragment的布局内容的加载。其中,View组成layout的具体方式可以基于实际布局需求进行选取组成,在此不做限定。
在一个具体的应用场景中,当Activity中包括10个Fragment,具体为:一个用于显示目标视频的第一Fragment以及九个用于显示目标视频之外的第二Fragment。则优先通过new方法的方式创建第一Fragment对应的多个View,基于上述多个View组成layout,并通过addView将该layout对应添加到第一Fragment中,从而完成第一Fragment的布局内容的加载。其中,第二Fragment的布局内容的加载进行延时处理,但其具体的加载过程与上述加载过程相同,在此不再赘述。
请参阅图3,图3是图2实施例中Activity的界面显示的示意图。
本实施例的Activity30可以应用于直播环境下的视频播放,其包括第一Fragment31与第二Fragment32以及第二Fragment33。其中,第一Fragment31用于显示目标直播视频,第二Fragment32用于显示礼物种类,第二Fragment33用于提供评论或弹幕功能。本实施例中,第一Fragment31为必要Fragment,在步骤S24中需要加载完毕,第二Fragment32以及第二Fragment33为非必要Fragment,可以延时加载。
在一个具体的应用场景中,设置与界面容器对应的播放载体的步骤可以通过设置Surface来实现,其中,由于Surface的设置效率依赖CPU等硬件性能的实时资源状态,因此,将非必要的第二Fragment的布局内容的加载进行延时处理可以节省硬件的资源消耗,提高Surface的设置效率,从而加快视频的播放时间。在一个具体的应用场景中,可以将第二Fragment布局内容的加载延时到Surface设置完成后进行,以进一步节省CPU等硬件的资源消耗,减少Surface的设置时间,从而降低目标视频的首帧时间。
步骤S25:将加载完成后的目标视频的布局内容添加至界面容器中,通过播放载体展示布局内容。
在一个具体的应用场景中,将加载完成后的目标视频的第一Fragment的布局内容添加至界面容器Activity中,并通过播放载体Surface展示第一Fragment的布局内容,从而实现通过第一Fragment的布局内容对后续的画面数据进行展示。
步骤S26:基于播放指令,利用目标视频的播放地址对目标视频的视频数据进行拉取,得到视频数据。
本步骤在步骤S22获取到播放指令后开始执行,与步骤S23-S25为并列进行,从而并线处理拉流和播放载体设置,进而将拉流所需的时间与播放载体设置重合,节省视频播放的时间。
具体地,基于用户的播放指令,利用步骤S21中各视频对应的IP地址,直接获取到目标视频的IP地址,并基于该IP地址对目标视频的视频数据进行拉取,得到初始数据。对初始数据进行解码得到目标视频的视频数据。
步骤S27:通过播放器播放音频数据,并舍弃已播放的音频数据对应的画面数据。
当播放载体还未设置好时,可以通过播放器的麦克风直接实时播放音频数据。此时,由于播放载体还未设置好,无法对画面数据进行播放,则直接舍弃已播放的音频数据对应的画面数据。避免该部分的画面数据对后续数据产生影响,导致音画不同步的现象产生。
本步骤通过先对音频数据进行播放,以尽快提高用户对目标视频内容的获取效率,提高用户体验。
步骤S28:获取到当前播放的音频数据对应的图像帧的画面数据,将图像帧的画面数据渲染到目标视频的布局内容中,通过播放载体进行播放。
当播放载体设置完成、显示目标视频的布局内容添加至界面容器中且视频数据解码完成后,获取到当前播放的音频数据对应的图像帧的画面数据,将图像帧的画面数据渲染到目标视频的布局内容中,通过播放载体显示与当前播放的音频数据对应的画面数据。从而将该图像帧的视频画面和视频声音同时展示给用户,完整实现目标视频的首帧播放。
目标视频的后续图像帧的画面数据和音频数据继续通过播放载体和麦克风对应播放,以完成后续目标视频的播放。
步骤S29:显示目标视频之外的界面容器的布局内容加载完成后,通过播放载体进行显示。
当目标视频之外的界面容器的布局内容加载完成后,通过播放载体进行显示,以将直播播放的其他界面功能提供给用户,从而完成直播间UI(页面布局)的设置。而由于本步骤在完成目标视频播放的步骤S28后进行,此时,目标视频已进行播放,则目标视频之外的界面容器的布局内容的加载时间对目标视频的播放开启时间没有影响。
通过上述步骤,本实施例的视频的播放方法先通过预先对各视频进行域名解析,以使得用户点击目标视频后能够直接基于解析得到的IP地址进行拉流,从而在用户点击目标视频到播放目标视频之间节省域名解析的时间,以加快播放目标视频的速度。本实施例随后将拉流与播放载体的设置并线进行,从而在同一时间段同时进行上述步骤,大大提前视频数据的解码时间,从而减少拉流和解码对视频播放耗时的占用。最后,本实施例异步并延时加载非必要的Fragment的布局内容的加载,从而减少CPU等硬件的资源占用,提高播放载体的设置效率,以更进一步地减少用户点击目标视频到播放目标视频之间的时间消耗,以全面提高视频播放的速度和效率,提高视频开启的秒开率。
请参阅图4,图4是本申请视频的播放装置一实施例的框架示意图。视频的播放装置40包括获取模块41、拉取模块42、加载模块43以及播放模块44。获取模块41,用于获取到目标视频的播放指令;拉取模块42用于基于播放指令对目标视频的视频数据进行拉取;以及基于播放指令创建目标视频的界面容器;加载模块43,用于加载目标视频的界面容器的布局内容,延时加载显示目标视频之外的界面容器的布局内容,并设置与界面容器对应的播放载体;播放模块44,用于将加载完成后的目标视频的布局内容添加至界面容器中,通过播放载体展示布局内容,并通过播放载体基于视频数据对目标视频进行播放。
播放模块44还用于通过播放器播放音频数据,并舍弃已播放的音频数据对应的画面数据;以及通过播放载体显示与当前播放的音频数据对应的画面数据。
播放模块44还用于获取到当前播放的音频数据对应的图像帧的画面数据;将图像帧的画面数据渲染到目标视频的布局内容中,通过播放载体进行播放。
播放模块44还用于目标视频之外的界面容器的布局内容加载完成后,通过播放载体进行显示。
获取模块41还用于对各视频进行域名解析,得到各视频对应的播放地址;基于播放指令对目标视频的视频数据进行拉取的步骤,包括:基于播放指令,利用目标视频的播放地址对目标视频的视频数据进行拉取,得到视频数据。
获取模块41还用于形成各视频的播放列表;获取到目标视频的播放指令的步骤包括:响应于用户点击播放列表的动作指令获取到播放指令。
加载模块43还用于通过new方法创建各布局内容的视图,并基于视图生成各布局内容的layout;通过addView方式将layout添加到各布局内容对应的Fragment中,得到界面容器的各布局内容。
上述方案,能够提高视频播放的速度和效率。
请参阅图5,图5是本申请电子设备一实施例的框架示意图。电子设备50包括相互耦接的存储器51和处理器52,处理器52用于执行存储器51中存储的程序指令,以实现上述任一视频的播放方法实施例的步骤。在一个具体的实施场景中,电子设备50可以包括但不限于:微型计算机、服务器,此外,电子设备50还可以包括笔记本电脑、平板电脑等移动设备,在此不做限定。
具体而言,处理器52用于控制其自身以及存储器51以实现上述任一视频的播放方法实施例的步骤。处理器52还可以称为CPU(Central Processing Unit,中央处理单元)。处理器52可能是一种集成电路芯片,具有信号的处理能力。处理器52还可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。另外,处理器52可以由集成电路芯片共同实现。
上述方案,能够提高视频播放的速度和效率。
请参阅图6,图6为本申请计算机可读存储介质一实施例的框架示意图。计算机可读存储介质60存储有能够被处理器运行的程序指令601,程序指令601用于实现上述任一视频的播放方法实施例的步骤。
上述方案,能够提高视频播放的速度和效率。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (10)
1.一种视频的播放方法,其特征在于,所述视频的播放方法包括:
获取到目标视频的播放指令;
基于所述播放指令对所述目标视频的视频数据进行拉取;以及基于所述播放指令创建所述目标视频的界面容器;
加载所述目标视频的界面容器的布局内容,延时加载显示所述目标视频之外的所述界面容器的布局内容,并设置与所述界面容器对应的播放载体;
将加载完成后的所述目标视频的布局内容添加至所述界面容器中,通过所述播放载体展示所述布局内容,并通过所述播放载体基于所述视频数据对所述目标视频进行播放。
2.根据权利要求1所述的视频的播放方法,其特征在于,所述视频数据包括音频数据和画面数据;
所述基于所述播放指令对所述目标视频的视频数据进行拉取的步骤之后,所述将加载完成后的所述目标视频的布局内容添加至所述界面容器中,通过所述播放载体展示所述布局内容,并通过所述播放载体基于所述视频数据对所述目标视频进行播放的步骤之前,包括:
通过播放器播放所述音频数据,并舍弃已播放的音频数据对应的画面数据;
所述通过所述播放载体基于所述视频数据对所述目标视频进行播放的步骤,包括:
通过所述播放载体显示与当前播放的音频数据对应的画面数据。
3.根据权利要求2所述视频的播放方法,其特征在于,所述通过所述播放载体显示与当前播放的音频数据对应的画面数据的步骤,包括:
获取到所述当前播放的音频数据对应的图像帧的画面数据;
将所述图像帧的画面数据渲染到所述目标视频的布局内容中,通过所述播放载体进行播放。
4.根据权利要求1所述的视频的播放方法,其特征在于,所述获取到目标视频的播放指令的步骤之前,包括:
对各视频进行域名解析,得到各视频对应的播放地址;
所述基于所述播放指令对所述目标视频的视频数据进行拉取的步骤,包括:
基于所述播放指令,利用所述目标视频的播放地址对所述目标视频的视频数据进行拉取,得到所述视频数据。
5.根据权利要求4所述的视频的播放方法,其特征在于,所述对各视频进行域名解析,得到各视频对应的播放地址的步骤,还包括:
形成所述各视频的播放列表;
所述获取到目标视频的播放指令的步骤包括:
响应于用户点击所述播放列表的动作指令获取到所述播放指令。
6.根据权利要求1所述的视频的播放方法,其特征在于,所述将加载完成后的所述目标视频的布局内容添加至所述界面容器中,通过所述播放载体展示所述布局内容,并通过所述播放载体基于所述视频数据对所述目标视频进行播放的步骤,包括:
所述显示目标视频之外的所述界面容器的布局内容加载完成后,通过所述播放载体进行显示。
7.根据权利要求1所述的视频的播放方法,其特征在于,所述加载所述目标视频的界面容器的布局内容,延时加载显示所述目标视频之外的所述界面容器的布局内容的步骤,包括:
通过new方法创建各所述布局内容的视图,并基于视图生成各所述布局内容的layout;
通过addView方式将layout添加到各所述布局内容对应的Fragment中,得到所述界面容器的各布局内容。
8.一种视频的播放装置,其特征在于,所述视频的播放装置包括:
获取模块,用于获取到目标视频的播放指令;
拉取模块,用于基于所述播放指令对所述目标视频的视频数据进行拉取;以及基于所述播放指令创建所述目标视频的界面容器;
加载模块,用于加载所述目标视频的界面容器的布局内容,延时加载显示所述目标视频之外的所述界面容器的布局内容,并设置与所述界面容器对应的播放载体;
播放模块,用于将加载完成后的所述目标视频的布局内容添加至所述界面容器中,通过所述播放载体展示所述布局内容,并通过所述播放载体基于所述视频数据对所述目标视频进行播放。
9.一种电子设备,其特征在于,包括相互耦接的存储器和处理器,所述处理器用于执行所述存储器中存储的程序指令,以实现如权利要求1至7任一项所述的视频的播放方法。
10.一种计算机可读存储介质,其上存储有程序指令,其特征在于,所述程序指令被处理器执行时实现如权利要求1至7任一项所述的视频的播放方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011539579.0A CN112770168B (zh) | 2020-12-23 | 2020-12-23 | 视频的播放方法以及相关装置、设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011539579.0A CN112770168B (zh) | 2020-12-23 | 2020-12-23 | 视频的播放方法以及相关装置、设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112770168A true CN112770168A (zh) | 2021-05-07 |
CN112770168B CN112770168B (zh) | 2023-10-17 |
Family
ID=75694789
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011539579.0A Active CN112770168B (zh) | 2020-12-23 | 2020-12-23 | 视频的播放方法以及相关装置、设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112770168B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113365150A (zh) * | 2021-06-04 | 2021-09-07 | 上海哔哩哔哩科技有限公司 | 视频处理方法和视频处理装置 |
CN114205675A (zh) * | 2021-12-06 | 2022-03-18 | 上海哔哩哔哩科技有限公司 | 视频预览方法及装置 |
CN115442650A (zh) * | 2021-06-02 | 2022-12-06 | 腾讯科技(深圳)有限公司 | 弹幕信息处理方法、装置、弹幕信息处理设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140136664A1 (en) * | 2012-10-02 | 2014-05-15 | Nextbit Systems Inc. | Resource based mobile device application streaming |
CN105681912A (zh) * | 2015-10-16 | 2016-06-15 | 乐视致新电子科技(天津)有限公司 | 一种视频播放方法和装置 |
CN107197393A (zh) * | 2017-06-16 | 2017-09-22 | 广州荔枝网络有限公司 | 一种单例视频播放器的实现方法 |
CN111432265A (zh) * | 2020-03-31 | 2020-07-17 | 腾讯科技(深圳)有限公司 | 一种处理视频画面的方法、相关装置及存储介质 |
CN111954041A (zh) * | 2019-05-15 | 2020-11-17 | 上海哔哩哔哩科技有限公司 | 一种视频加载方法、计算机设备及可读存储介质 |
CN112040298A (zh) * | 2020-09-02 | 2020-12-04 | 广州虎牙科技有限公司 | 视频播放的处理方法、装置、电子设备及存储介质 |
-
2020
- 2020-12-23 CN CN202011539579.0A patent/CN112770168B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140136664A1 (en) * | 2012-10-02 | 2014-05-15 | Nextbit Systems Inc. | Resource based mobile device application streaming |
CN105681912A (zh) * | 2015-10-16 | 2016-06-15 | 乐视致新电子科技(天津)有限公司 | 一种视频播放方法和装置 |
CN107197393A (zh) * | 2017-06-16 | 2017-09-22 | 广州荔枝网络有限公司 | 一种单例视频播放器的实现方法 |
CN111954041A (zh) * | 2019-05-15 | 2020-11-17 | 上海哔哩哔哩科技有限公司 | 一种视频加载方法、计算机设备及可读存储介质 |
CN111432265A (zh) * | 2020-03-31 | 2020-07-17 | 腾讯科技(深圳)有限公司 | 一种处理视频画面的方法、相关装置及存储介质 |
CN112040298A (zh) * | 2020-09-02 | 2020-12-04 | 广州虎牙科技有限公司 | 视频播放的处理方法、装置、电子设备及存储介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115442650A (zh) * | 2021-06-02 | 2022-12-06 | 腾讯科技(深圳)有限公司 | 弹幕信息处理方法、装置、弹幕信息处理设备及存储介质 |
CN113365150A (zh) * | 2021-06-04 | 2021-09-07 | 上海哔哩哔哩科技有限公司 | 视频处理方法和视频处理装置 |
CN114205675A (zh) * | 2021-12-06 | 2022-03-18 | 上海哔哩哔哩科技有限公司 | 视频预览方法及装置 |
CN114205675B (zh) * | 2021-12-06 | 2023-04-11 | 上海哔哩哔哩科技有限公司 | 视频预览方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112770168B (zh) | 2023-10-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10930318B2 (en) | Gapless video looping | |
CN112770168B (zh) | 视频的播放方法以及相关装置、设备 | |
US10771565B2 (en) | Sending application input commands over a network | |
WO2017063399A1 (zh) | 一种视频播放方法和装置 | |
US11025967B2 (en) | Method for inserting information push into live video streaming, server, and terminal | |
CN108566561B (zh) | 视频播放方法、装置及存储介质 | |
WO2018183095A1 (en) | Low-latency mobile device audiovisual streaming | |
KR100889367B1 (ko) | 네트워크를 통한 가상 스튜디오 구현 시스템 및 그 방법 | |
CN106817613B (zh) | 实现音视频内容播放的方法和装置 | |
US12058387B2 (en) | Video processing method and apparatus, computer device, and storage medium | |
WO2020062685A1 (zh) | 视频处理方法、装置、终端和介质 | |
WO2019114330A1 (zh) | 一种视频播放方法、装置和终端设备 | |
CN108769816B (zh) | 一种视频播放方法、装置及存储介质 | |
US20220210513A1 (en) | Start-up performance improvement for remote computer application | |
US20200107084A1 (en) | Method and device for playback optimization | |
WO2021139359A1 (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN111541905A (zh) | 一种直播方法、装置、计算机设备和存储介质 | |
CN114584821A (zh) | 视频处理方法及装置 | |
CN114268830A (zh) | 云导播同步方法、装置、设备及存储介质 | |
US20230217047A1 (en) | Method, system, and computer-readable recording medium for implementing fast-switching mode between channels in multi-live transmission environment | |
CN111954041A (zh) | 一种视频加载方法、计算机设备及可读存储介质 | |
CN113778575B (zh) | 图像处理方法、装置及电子设备 | |
CN113411636A (zh) | 连麦直播方法、装置、电子设备及计算机可读存储介质 | |
CN112933611A (zh) | 云游戏进度分享方法、装置和电子设备 | |
WO2017101379A1 (zh) | 播放视频的方法以及视频客户端、本地播放器和智能设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |