链氪巴士
  1. 首页
  2. 站点导航
  3. 文章
  4. 快讯
  5. 软件
  6. 书刊
  7. 关于

WMPlayer-多功能的AVPlayer封装视频播放器

WMPlayer是一个对AVPlayer进行封装的项目,它继承UIView且支持pods。这个播放器功能丰富,包含手势快进快退、全面屏适配、支持网络和本地视频播放、旋转屏、播放系统相册视频、多种播放控制方式、适配iPhoneX等众多功能。它还提供了多种全屏播放视频的解决方案,在实...

访问官网 →

WMPlayer-多功能视频播放器

项目简介

WMPlayer是对AVPlayer的封装,它继承UIView,支持pods。这个播放器有很多实用功能,如手势快进、快退,全面适配全面屏,能同时支持网络和本地视频播放。它还支持旋转屏(全屏和小屏模式切换、自动感应旋转)、播放系统相册视频、在cell中播放、列表播放、手势改变屏幕亮度和音量、多种快进快退方式、跳到指定时间点播放、全屏锁定、后台播放、适配iPhoneX、静音、循环播放、画中画功能、倍速播放以及列表到详情页的无缝播放等。

项目目的

从其功能来看,目的是为开发者提供一个功能丰富、易于集成且能满足多种视频播放需求的播放器组件,无论是在网络视频播放还是本地视频播放场景下,都能方便地应用在iOS开发项目中。

核心技术

它基于AVPlayer进行封装,采用Objective-C和Objective-C++(占比86.0%和13.5%)编写代码。通过继承UIView来构建播放器的视图结构,利用各种手势识别技术实现诸如快进、快退、调整亮度和音量等操作。在适配方面,针对全面屏和iPhoneX等不同设备形态进行了优化。

实践案例

在旋转屏功能方面,旋转view的思路类似于网易新闻的实现方式;旋转ViewController的思路则类似腾讯视频;而自定义转场动画的思路可以参考爱奇艺客户端的实现,例如在demo中的新浪tab对应的DetailViewController.m里面的相关代码(需添加全屏按钮点击事件才有全屏效果)。

项目总结

WMPlayer是一个功能强大的视频播放器项目,涵盖了多种视频播放相关的功能和特性,无论是对于视频播放功能的实现还是对不同设备的适配等方面都有很好的解决方案。如果大家有任何问题或者想法,欢迎在下方留言参与讨论。

项目地址

GitHub链接直达