一种直播间画中画播放方法、存储介质、电子设备及系统技术方案

技术编号:24041706 阅读:86 留言:0更新日期:2020-05-07 03:37
本发明专利技术公开了一种直播间画中画播放方法、存储介质、电子设备及系统,涉及直播间视频播放技术领域,该方法包括以下步骤:创建MediaPlayer管理器;获取直播视频数据流地址,创建MediaPlayer加载直播视频数据流进行解析,并对Activity组件进行初始化;创建第一Surface窗口;开启画中画播放工作时,关闭第一Surface窗口,并创建第二Surface窗口,第二Surface窗口用于以画中画的形式显示直播视频数据;当停止画中画播放操作时,关闭第二Surface窗口,重新创建第一Surface窗口,显示直播视频数据。本发明专利技术将直播视频的视频播放以及视频显示进行独立,在直播视频播放需要进行画中画播放时,能够保证在进行画中画播放时的播放流畅度,为用户的视频观看提供保障。

A playing method, storage medium, electronic equipment and system of picture in picture in live studio

【技术实现步骤摘要】
一种直播间画中画播放方法、存储介质、电子设备及系统
本专利技术涉及直播间视频播放
,具体涉及一种直播间画中画播放方法、存储介质、电子设备及系统。
技术介绍
随着直播的发展,直播涉及的内容越来越广泛,观看直播的人越来越多,在直播过程中,用户往往需要在观看直播间的时候,开启另一个小窗口进行另一个视频的播放,例如该直播间其他视频图像的播放或其他直播间视频的播放或网页上相关视频的播放,其需要在直播间主视频不关闭的基础上,另开启一个小窗口同时进行播放,此播放方式成为画中画播放;传统的画中画播放中,在画中画播放器的开启和关闭过程中,对直播间视频以及画中画播放器的视频播放,存在一定的卡顿影响;因此,急需一种新的直播间画中画播放方法,减少卡顿情况的出现,为用户的直播间观看提供保障。
技术实现思路
针对现有技术中存在的缺陷,本专利技术的目的在于提供一种直播间画中画播放方法,将直播视频的视频播放以及视频显示进行独立,在直播视频播放需要进行画中画播放时,从而能够保证在进行画中画播放时的播放流畅度,为用户的视频观看提供保障。为达到以上目的,本专利技术采取的技术方案是:第一方面,本专利技术提供一种直播间画中画播放方法,其包括以下步骤:创建MediaPlayer管理器,其用于管控MediaPlayer;获取直播视频数据流地址,创建MediaPlayer加载直播视频数据流进行解析,并对Activity组件进行初始化;基于Activity组件创建第一Surface窗口,所述第一Surface窗口用于显示MediaPlayer解析的直播视频数据;开启画中画播放工作时,关闭所述第一Surface窗口,并利用WindowManager创建第二Surface窗口,所述第二Surface窗口用于以画中画的形式显示所述MediaPlayer解析的直播视频数据;当停止画中画播放操作时,关闭所述第二Surface窗口,重新基于Activity组件创建第一Surface窗口,显示所述MediaPlayer解析的直播视频数据;其中,当关闭所述第一Surface窗口时,MediaPlayer继续加载直播视频数据并进行解析。在上述方案的基础上,该方法还包括以下步骤:当需要进行下一次画中画播放工作时,重新对所述WindowManager进行初始化,并基于WindowManager重新创建所述第二Surface窗口。在上述方案的基础上,所述基于Activity组件创建第一Surface窗口中,具体包括以下步骤:在Activity组件中利用TextureView控件创建SurfaceTexture控件;利用SurfaceTexture控件创建所述第一Surface窗口。在上述方案的基础上,所述MediaPlayer管理器用于控制MediaPlayer进行初始化、暂停、停止、销毁、监听以及播放。在上述方案的基础上,所述MediaPlayer管理器内配置一HandlerThread,用于执行MediaPlayer管理器的所有操作,避免阻塞UI线程。第二方面,本专利技术还提供另一种直播间画中画播放方法,其用于在直播间中进行直播间画中画播放工作,其包括以下步骤:S1、创建MediaPlayer管理器,其用于管控MediaPlayer;S2、获取直播视频数据流地址,创建MediaPlayer加载直播视频数据流进行解析,并对Activity组件进行初始化;S3、基于Activity组件创建第一Surface窗口,所述第一Surface窗口用于显示MediaPlayer解析的直播视频数据;S4、开启画中画播放工作时,关闭所述第一Surface窗口,并利用WindowManager创建第二Surface窗口,所述第二Surface窗口用于以画中画的形式显示所述MediaPlayer解析的直播视频数据;S5、当停止画中画播放操作时,关闭所述第二Surface窗口,重新基于Activity组件创建第一Surface窗口,显示所述MediaPlayer解析的直播视频数据;S6、当需要进行下一次画中画播放工作时,重新对所述WindowManager进行初始化,并基于WindowManager重新创建第二Surface窗口。第三方面,本专利技术还提供另一种直播间画中画播放方法,其包括以下步骤:创建第一单元,其用于管控第一播放器;获取第一视频数据,创建第一播放器进行后台解析;基于第一组件创建第一显示窗口,所述第一显示窗口用于显示第一播放器解析的第一视频数据;开启画中画播放工作时,关闭所述第一显示窗口,并利用第二单元创建第二显示窗口,所述第二显示窗口用于以画中画的形式显示所述第一视频数据;当停止画中画播放操作时,关闭所述第二显示窗口,重新基于第一组件创建第一显示窗口,显示所述第一播放器解析的第一视频数据;其中,当关闭第一显示窗口时,所述第一播放器继续加载第一视频数据并进行解析。第四方面,本专利技术还提供一种存储介质,该存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面至第三方面的直播间画中画播放方法。第五方面,本专利技术还提供一种电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面至第三方面的直播间画中画播放方法。第六方面,本专利技术还提供一种直播间画中画播放系统,其包括:画中画开启单元,其用于当需要开启画中画播放工作时,产生画中画播放信号;MediaPlayer管理器,其用于管控MediaPlayer,还有用于获取直播视频数据流地址,创建MediaPlayer加载直播视频数据流并进行解析,并对Activity组件进行初始化;Activity组件控制单元,其用于对Activity组件进行管控;第一Surface窗口创建单元,其用于基于Activity组件创建第一Surface窗口,所述第一Surface窗口用于显示MediaPlayer播放的直播视频数据;第一Surface窗口关闭单元,其用于在接收到画中画播放信号后,关闭所述第一Surface窗口;画中画显示单元,其用于在接收到所述画中画播放信号后,利用WindowManager创建第二Surface窗口,所述第二Surface窗口用于以画中画的形式显示所述MediaPlayer解析的直播视频数据;画中画关闭单元,其用于当停止画中画播放工作时,关闭所述第二Surface窗口;第一Surface窗口重启单元,其用于在停止画中画播放工作后,重新基于Activity组件创建第一Surface窗口;其中,当关闭所述第一Surface窗口时,MediaPlayer继续加载直播视频数据并进行解析。与现有技术相比,本专利技术的优点在于:本专利技术将直播视频的视频播放以及视频显示进本文档来自技高网...

【技术保护点】
1.一种直播间画中画播放方法,其特征在于,其包括以下步骤:/n创建MediaPlayer管理器,其用于管控MediaPlayer;/n获取直播视频数据流地址,创建MediaPlayer加载直播视频数据流进行解析,并对Activity组件进行初始化;/n基于Activity组件创建第一Surface窗口,所述第一Surface窗口用于显示MediaPlayer解析的直播视频数据;/n开启画中画播放工作时,关闭所述第一Surface窗口,并利用WindowManager创建第二Surface窗口,所述第二Surface窗口用于以画中画的形式显示所述MediaPlayer解析的直播视频数据;/n当停止画中画播放操作时,关闭所述第二Surface窗口,重新基于Activity组件创建第一Surface窗口,显示所述MediaPlayer解析的直播视频数据;/n其中,当关闭所述第一Surface窗口时,MediaPlayer继续加载直播视频数据并进行解析。/n

【技术特征摘要】
1.一种直播间画中画播放方法,其特征在于,其包括以下步骤:
创建MediaPlayer管理器,其用于管控MediaPlayer;
获取直播视频数据流地址,创建MediaPlayer加载直播视频数据流进行解析,并对Activity组件进行初始化;
基于Activity组件创建第一Surface窗口,所述第一Surface窗口用于显示MediaPlayer解析的直播视频数据;
开启画中画播放工作时,关闭所述第一Surface窗口,并利用WindowManager创建第二Surface窗口,所述第二Surface窗口用于以画中画的形式显示所述MediaPlayer解析的直播视频数据;
当停止画中画播放操作时,关闭所述第二Surface窗口,重新基于Activity组件创建第一Surface窗口,显示所述MediaPlayer解析的直播视频数据;
其中,当关闭所述第一Surface窗口时,MediaPlayer继续加载直播视频数据并进行解析。


2.如权利要求1所述的方法,其特征在于,还包括以下步骤:
当需要进行下一次画中画播放工作时,重新对所述WindowManager进行初始化,并基于WindowManager重新创建所述第二Surface窗口。


3.如权利要求1所述的方法,其特征在于,所述基于Activity组件创建第一Surface窗口中,具体包括以下步骤:
在Activity组件中利用TextureView控件创建SurfaceTexture控件;
利用SurfaceTexture控件创建所述第一Surface窗口。


4.如权利要求1所述的方法,其特征在于:所述MediaPlayer管理器用于控制MediaPlayer进行初始化、暂停、停止、销毁、监听以及播放。


5.如权利要求1所述的方法,其特征在于:所述MediaPlayer管理器内配置一HandlerThread,用于执行MediaPlayer管理器的所有操作,避免阻塞UI线程。


6.一种直播间画中画播放方法,其特征在于,其用于在直播间中进行直播间画中画播放工作,其包括以下步骤:
S1、创建MediaPlayer管理器,其用于管控MediaPlayer;
S2、获取直播视频数据流地址,创建MediaPlayer加载直播视频数据流进行解析,并对Activity组件进行初始化;
S3、基于Activity组件创建第一Surface窗口,所述第一Surface窗口用于显示MediaPlayer解析的直播视频数据;
S4、开启画中画播放工作时,关闭所述第一Surface窗口,并利用WindowManager创建第二Surface窗口,所述第二Surface窗口用于以画中画的形式显示所述MediaPlayer解析的直播视频数据;
S5、当停止画中画播放操作时,关闭所述第二Surf...

【专利技术属性】
技术研发人员:李星
申请(专利权)人:武汉斗鱼网络科技有限公司
类型:发明
国别省市:湖北;42

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

1