您的位置:首页 > 移动开发 > IOS开发

iOS 视频播放

2016-04-26 00:00 543 查看
摘要: iOS播放视频有四种实现方式:AVPlayer、MPMoviePlayerController、MPMoviePlayerViewController、AVPlayerViewController。

一、AVPlayer

ios9之后的改变弃用了:MPMoviePlayerViewController(框架:MediaPlayer),新加入了:AVPlayerViewController(框架:AVFoundation )。

AVPlayerItem音视频里面播放的对象

AVPlayerLayer播放显示视频的图层界面(图层比起view不能添加响应事件)

AVPlayerViewController视图控制器可以显示视频,并且调节控件

注意:AVPlayer用来播放音视频(必须与AVPlayerLayer配合使用),才可以达到有声有形的效果。

使用说明:

//1.创建一个网络播放地址
NSURL *url = [NSURL URLWithString:@"http://dazhao.sinaapp.com/lovetosa/abc.mp4"];
// 2.创建AVPlayerItem
AVPlayerItem *item = [AVPlayerItem playerItemWithURL:url];
// 3.创建AVPlayer
_player = [AVPlayer playerWithPlayerItem:item];
// 4.添加AVPlayerLayer
AVPlayerLayer *layer = [AVPlayerLayer playerLayerWithPlayer:self.player];
layer.frame = CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.width * 9 / 16);

[self.view.layer addSublayer:layer];
//播放
//  [_player play];


二、AVPlayerViewController

使用说明:

//1.创建控制器
AVPlayerViewController *playerVC = [[AVPlayerViewController alloc] init];
//2.获得视频的URL
NSURL *url = [NSURL URLWithString:@"http://dazhao.sinaapp.com/lovetosa/abc.mp4"];
//3.创建播放类
AVPlayer *player = [[AVPlayer alloc] initWithURL:url];
//4.对播放控制器赋值
playerVC.player = player;
//5.弹出控制器
[self presentViewController:playerVC animated:YES completion:nil];
//6.开始播放  注意:player必须手动调用, 才会播放视频
[playerVC.player play];


三、MPMoviePlayerController(播放视图类)

用MPMoviePlayerController(需要导入MediaPlayer.Framework),MPMoviePlayerController,简单易用,通过通知监听状态,添加到View上;

这是一种通过在某个View上加载这个播放视图,实现播放视频的效果。

注意:MPMoviePlayerController在全屏播放的时候会默认隐藏状态栏,所以需要在全屏结束的时候代码手动显示状态栏,否则导航栏会出现20点的空白。

使用说明:

// 1.获取视频的URL
NSURL *url = [NSURL URLWithString:@"http://dazhao.sinaapp.com/lovetosa/abc.mp4"];
// 2.创建控制器
_playerController = [[MPMoviePlayerController alloc] initWithContentURL:url];
// 3.设置控制器的View的位置
_playerController.view.frame = CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.width * 9 / 16);
//
3ff0
4.将View添加到控制器上
[self.view addSubview:_playerController.view];
// 5.设置属性
//    _playerController.controlStyle = MPMovieControlStyleNone;
//控制栏样式
/**
MPMovieControlStyleNone,       没有控制界面
MPMovieControlStyleEmbedded,   嵌入的控制界面
MPMovieControlStyleFullscreen,     全屏的控制界面
*/
self.playerController.controlStyle = MPMovieControlStyleEmbedded;    // 默认
//视频拉伸模式
/**
MPMovieScalingModeNone,       没有拉伸
MPMovieScalingModeAspectFit,  保持比例拉伸
MPMovieScalingModeAspectFill,   保持比例填充
MPMovieScalingModeFill         拉伸填充
*/
self.playerController.scalingMode = MPMovieScalingModeAspectFit; // 默认

[_playerController play];


四、MPMoviePlayerViewController(播放控制器类)

这是一种通过弹出视频控制器的方式实现视频播放。

说用说明:

// 1.获取视频的URL
NSURL *url = [NSURL URLWithString:@"http://dazhao.sinaapp.com/lovetosa/abc.mp4"];
//2.创建视频播放控制器
MPMoviePlayerViewController *vc = [[MPMoviePlayerViewController alloc] initWithContentURL:url];
//3.弹出视频播放控制器
[self presentViewController:vc animated:YES completion:nil];
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  iOS 视频播放