GSYVideoPlayer基于 IJKPlayer 的视频播放器

联合创作 · 2023-09-29 19:53

GSYVideoPlayer 是基于 IJKPlayer(兼容系统 MediaPlayer 与 EXOPlayer2 ),实现了多功能的视频播放器。 


项目结构:



  • Player 播放内核层:IjkMediaPlayer、ExoPlayr2、MediaPlayer(IPlayerManager)。


  • Manager 内核管理层:GSYVideoManager(GSYVideoBaseManager <- GSYVideoViewBridge)。


  • Video 播放器控件层:GSYTextureRenderVIew 到 GSYVideoPlayer 五层。


  • Render 渲染控件层:TextureView、SurfaceView、GLSurfaceView(GSYRenderView <- IGSYRenderView)。



结构图: 




  • 管理层 GSVideoManager 继承 GSYVideoBaseManager ,通过 IPlayerManager 控制播放内核。


  • 管理层 GSVideoManager 实现了 GSYVideoViewBridge ,和 UI 层交互(主要通过 UI 层的GSYVideoPlayer)。


  • UI 层 GSYTextureRenderView 通过 GSYRenderView ,内置 IGSYRenderView 实现类,和渲染层交互。


  • UI 层逐层继承实现各层逻辑,内部大部分方法为 protect 。


浏览 26
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报