一种视频播放方法及装置制造方法及图纸

技术编号:30091994 阅读:19 留言:0更新日期:2021-09-18 08:54
本发明专利技术实施例提供了一种视频播放方法及装置,方法包括:通过目标应用程序的第一子线程,在第一播放器的第一表面Surface中播放第一视频;当检测到用于播放第二视频的视频跳转播放指令时,通过目标应用程序的主线程创建第二播放器,并在第二播放器中创建第二Surface,以及通过目标应用程序的第二子线程释放第一播放器;通过目标应用程序的第三子线程,在第二Surface中播放第二视频;当第一播放器释放完成后,通过主线程释放第一Surface。基于上述处理,能够降低跳转播放的时延,提高用户的体验。验。验。

【技术实现步骤摘要】
一种视频播放方法及装置


[0001]本专利技术涉及计算机
,特别是涉及一种视频播放方法及装置。

技术介绍

[0002]随着计算机技术的快速发展,用户可以通过电子设备浏览各种网络资源(例如,视频网络资源)。在浏览视频的过程中,用户可以在电子设备中执行视频跳转播放操作,相应的,电子设备可以从当前播放的视频,跳转至播放其他视频。
[0003]相关技术中,基于安卓系统的电子设备需要通过播放器在系统提供的Surface(表面)中渲染图像,以播放视频。当用户选择视频跳转播放时,电子设备需要释放用于播放当前视频的播放器和Surface,当该播放器和Surface释放完成后,可以创建一个新的播放器和新的Surface,以通过新的播放器在新的Surface中播放新的视频。
[0004]然而,释放用于播放当前视频的播放器和Surface需要消耗较大的时长,也就导致跳转播放存在较高的时延,降低用户的体验。

技术实现思路

[0005]本专利技术实施例的目的在于提供一种视频播放方法及装置,以降低跳转播放的时延,提高用户的体验。具体技术方案如下:
[0006]在本专利技术实施的第一方面,首先提供了一种视频播放方法,所述方法包括:
[0007]通过目标应用程序的第一子线程,在第一播放器的第一表面Surface中播放第一视频;
[0008]当检测到用于播放第二视频的视频跳转播放指令时,通过所述目标应用程序的主线程创建第二播放器,并在所述第二播放器中创建第二Surface,以及通过所述目标应用程序的第二子线程释放所述第一播放器;
[0009]通过所述目标应用程序的第三子线程,在所述第二Surface中播放第二视频;
[0010]当所述第一播放器释放完成后,通过所述主线程释放所述第一Surface。
[0011]可选的,所述方法还包括:
[0012]当所述第一播放器释放完成后,通过所述主线程,将所述第一Surface所属的表面视图SurfaceView在对应的活动Activity中取消注册。
[0013]可选的,所述通过所述主线程,将所述第一Surface在对应的活动Activity中取消注册,包括:
[0014]通过所述主线程,基于反射机制,获取用于取消注册所述第一Surface所属的SurfaceView的反注册函数;
[0015]根据所述反注册函数,将所述第一Surface所属的SurfaceView在对应的活动Activity中取消注册。
[0016]可选的,在所述通过所述目标应用程序的主线程创建第二播放器之前,所述方法还包括:
[0017]通过所述主线程,检测所述第一Surface的延时释放标识是否为有效状态;
[0018]若所述第一Surface的延时释放标识为有效状态,则通过所述主线程,拦截所述视频跳转播放指令触发的第一Surface的释放事件;
[0019]所述通过所述目标应用程序的主线程创建第二播放器,包括:
[0020]在所述第一Surface的延时释放标识为有效状态的情况下,通过所述目标应用程序的主线程创建第二播放器。
[0021]可选的,在所述通过所述主线程释放所述第一Surface之前,所述方法还包括:
[0022]当所述第一播放器释放完成时,通过所述第二子线程,触发播放器释放完成事件,其中,所述播放器释放完成事件用于将所述第一Surface的延时释放标识修改为无效状态;
[0023]当通过所述主线程监听到所述播放器释放完成事件时,检测所述第一Surface的延时释放标识是否为无效状态;
[0024]所述通过所述主线程释放所述第一Surface,包括:
[0025]当检测到所述第一Surface的延时释放标识为无效状态时,通过所述主线程释放所述第一Surface。
[0026]可选的,所述方法还包括:
[0027]在所述第二Surface创建完成后,通过所述主线程,为所述第二Surface设置有效状态的延时释放标识。
[0028]在本专利技术实施的第二方面,还提供了一种视频播放装置,所述装置包括:
[0029]第一播放模块,用于通过目标应用程序的第一子线程,在第一播放器的第一表面Surface中播放第一视频;
[0030]处理模块,用于当检测到用于播放第二视频的视频跳转播放指令时,通过所述目标应用程序的主线程创建第二播放器,并在所述第二播放器中创建第二Surface,以及通过所述目标应用程序的第二子线程释放所述第一播放器;
[0031]第二播放模块,用于通过所述目标应用程序的第三子线程,在所述第二Surface中播放第二视频;
[0032]释放模块,用于当所述第一播放器释放完成后,通过所述主线程释放所述第一Surface。
[0033]可选的,所述装置还包括:
[0034]取消注册模块,用于当所述第一播放器释放完成后,通过所述主线程,将所述第一Surface所属的表面视图SurfaceView在对应的活动Activity中取消注册。
[0035]可选的,所述取消注册模块,包括:
[0036]反注册函数获取子模块,用于通过所述主线程,基于反射机制,获取用于取消注册所述第一Surface所属的SurfaceView的反注册函数;
[0037]取消注册子模块,用于根据所述反注册函数,将所述第一Surface所属的SurfaceView在对应的活动Activity中取消注册。
[0038]可选的,所述装置还包括:
[0039]第一检测模块,用于在所述通过所述目标应用程序的主线程创建第二播放器之前,通过所述主线程,检测所述第一Surface的延时释放标识是否为有效状态;
[0040]拦截模块,用于若所述第一Surface的延时释放标识为有效状态,则通过所述主线
程,拦截所述视频跳转播放指令触发的第一Surface的释放事件;
[0041]所述处理模块,具体用于在所述第一Surface的延时释放标识为有效状态的情况下,通过所述目标应用程序的主线程创建第二播放器。
[0042]可选的,所述装置还包括:
[0043]事件触发模块,用于在所述通过所述主线程释放所述第一Surface之前,当所述第一播放器释放完成时,通过所述第二子线程,触发播放器释放完成事件,其中,所述播放器释放完成事件用于将所述第一Surface的延时释放标识修改为无效状态;
[0044]第二检测模块,用于当通过所述主线程监听到所述播放器释放完成事件时,检测所述第一Surface的延时释放标识是否为无效状态;
[0045]所述释放模块,具体用于当检测到所述第一Surface的延时释放标识为无效状态时,通过所述主线程释放所述第一Surface。
[0046]可选的,所述装置还包括:
[0047]设置模块,用于在所述第二Surface创建完成后,通过所述本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种视频播放方法,其特征在于,所述方法包括:通过目标应用程序的第一子线程,在第一播放器的第一表面Surface中播放第一视频;当检测到用于播放第二视频的视频跳转播放指令时,通过所述目标应用程序的主线程创建第二播放器,并在所述第二播放器中创建第二Surface,以及通过所述目标应用程序的第二子线程释放所述第一播放器;通过所述目标应用程序的第三子线程,在所述第二Surface中播放第二视频;当所述第一播放器释放完成后,通过所述主线程释放所述第一Surface。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:当所述第一播放器释放完成后,通过所述主线程,将所述第一Surface所属的表面视图SurfaceView在对应的活动Activity中取消注册。3.根据权利要求2所述的方法,其特征在于,所述通过所述主线程,将所述第一Surface在对应的活动Activity中取消注册,包括:通过所述主线程,基于反射机制,获取用于取消注册所述第一Surface所属的SurfaceView的反注册函数;根据所述反注册函数,将所述第一Surface所属的SurfaceView在对应的活动Activity中取消注册。4.根据权利要求1所述的方法,其特征在于,在所述通过所述目标应用程序的主线程创建第二播放器之前,所述方法还包括:通过所述主线程,检测所述第一Surface的延时释放标识是否为有效状态;若所述第一Surface的延时释放标识为有效状态,则通过所述主线程,拦截所述视频跳转播放指令触发的第一Surface的释放事件;所述通过所述目标应用程序的主线程创建第二播放器,包括:在所述第一Surface的延时释放标识为有效状态的情况下,通过所述目标应用程序的主线程创建第二播放器。5.根据权利要求4所述的方法,其特征在于,在所述通过所述主线程释放所述第一Surface之前,所述方法还包括:当所述第一播放器释放完成时,通过所述第二子线程,触发播放器释放完成事件,其中,所述播放器释放完成事...

【专利技术属性】
技术研发人员:王以建
申请(专利权)人:北京奇艺世纪科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1