ios视频播放器封装(全屏播放,锁屏、手势调节亮度、音量、进度)

非常感谢大家利用自己宝贵的时间来阅读我的文章 ,  今天给大家带来的是一个基于AVplayer封装的视频播放器,支持视频全屏播放、手势加减音量,快进后退、调节屏幕亮度、定位视频播放暂停时刻、实际观看时间、全屏播放锁屏等功能。如果需要的话希望能帮到你 , 当然, 有任何不妥的地方 欢迎指正。喜欢的可以关注一下我的、我的博客

想直接下demo的请点击这里ZQAvPlayerDemo

先附上效果图


ios视频播放器封装(全屏播放,锁屏、手势调节亮度、音量、进度)_第1张图片


ios视频播放器封装(全屏播放,锁屏、手势调节亮度、音量、进度)_第2张图片


ios视频播放器封装(全屏播放,锁屏、手势调节亮度、音量、进度)_第3张图片


ios视频播放器封装(全屏播放,锁屏、手势调节亮度、音量、进度)_第4张图片

用法:

一、下载ZQAvPlayerDemo,把项目中的ZQAvPlayer文件夹和UINavigationController+Rotation拖入你的项目中,这里需要注意一下,如果你项目了已经使用了MBProgressHUD,要把ZQAvPlayer里的MBProgressHUD删了,还有就是注意一下项目里原来有没有控制屏幕旋转的方法,防止冲突。

二、在视频播放控制器里引用"ZQAVPlayer.h"和"UINavigationController+Rotation.h"头文件,声明一个ZQAVPlayer类型的player

然后在viewDidLoad做初始化

if (_player == nil) {

_player = [[ZQAVPlayer alloc] initWithFrame:CGRectMake(0, 20, ScreenWidth, titleImgHeight) url:@"http://27.112.86.59:1935/vod1//2017_11/22/1511344230826.mp4" type:player_online];

_player.delegate = self;

[self.view addSubview:_player];

}


在viewWillAppear开始播放视频

[_player play];

在viewWillDisappear方法里面记得要暂停播放


if (_player.currentPlayState == playState_Playing) {

[_player pause];

}

添加锁屏功能支持,实现下面方法就行了

- (BOOL)shouldAutorotate {

if (_player.locked) {

return true;

}else{

return false;

}

}



在进入全屏代理方法里添加如下代码

-(void)go2FullScreen

{

[_player showBackBtn:true];

[self.view addSubview:_player];

NSLog(@"全屏");

}

切换视频:

[_player changeVideoUrl:@""];


主要代理方法

/**

返回按钮点击

*/

-(void)playerBackBtnClicked;

/**

播放结束

*/

-(void)playerEnd;

/**

进入全屏

*/

-(void)go2FullScreen;

/**

退出全屏

*/

-(void)exitFullScreen;

/**

屏幕方向改变

*/

-(void)OrienrationChanged:(UIDeviceOrientation)orientation;

/**

开始播放

@param seconds 开始播放位置(秒)

*/

-(void)playerStartPlay:(NSInteger)seconds;

/**

播放中断

@param seconds 中断播放位置(秒)

*/

-(void)breakEventBecome:(NSInteger)seconds;

/**

切换地址

*/

-(void)changeEventBecome;

/**

播放出错

*/

-(void)errorEventBecome;

到这里基本上就可以满足视频播放的需要了,感兴趣的看看相关功能的实现方法,使用的时候可以参考demo,如果在使用过程中遇到什么问题,可以在下方评论

你可能感兴趣的:(ios视频播放器封装(全屏播放,锁屏、手势调节亮度、音量、进度))