AVPlayerViewController

一:引入框架
//导入音视频框架
#import 
#import 
二:设置对应的属性
//音视频
@property (nonatomic,strong)AVPlayer *player;
//音视频控制器
@property (nonatomic,strong)AVPlayerViewController *playerVC;

三:配置

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    
//    网址字符串
    NSString *playerStr = @"http://static.tripbe.com/videofiles/20121214/9533522808.f4v.mp4";
//    网址
    NSURL *playerURL = [NSURL URLWithString:playerStr];
//    初始化音视频控制器
    self.playerVC = [[AVPlayerViewController alloc] init];
//    视频链接
    AVPlayerItem *playerItem = [[AVPlayerItem alloc] initWithURL:playerURL];
//    初始化音视频
    self.player = [[AVPlayer alloc] initWithPlayerItem:playerItem];
//    初始化音视频的播放层layer
    AVPlayerLayer *playerLayer = [AVPlayerLayer playerLayerWithPlayer:self.player];
//    layer的frame
    playerLayer.frame = CGRectMake(0, 100, self.view.frame.size.width, 300);
//    设置提示(可设置layer的背景等)
//    设置视频填充模式(AVLayerVideoGravityResize,等比例全部填充播放)
    playerLayer.videoGravity = AVLayerVideoGravityResize;
//    音视频的layer层添加到视图上
    [self.view.layer addSublayer:playerLayer];
//    设置音视频为音视频控制器的内部音视频
    self.playerVC.player = self.player;
//    关闭音视频控制器的内部约束,设置为自动布局
    /**
     默认情况下,autoresizing面具一个视图产生约束完全确定视图的位置。这允许自动布局系统跟踪的框架意见布局是手动控制(例如,通过-setFrame:)。当你选择使用自动布局位置视图通过添加自己的约束,你必须设置该属性。IB会为你这样做。
     */
    self.playerVC.view.translatesAutoresizingMaskIntoConstraints = YES;
    
}
四:显示音视频控制器
//点击空白
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {

//    显示音视频控制器
    [self showViewController:self.playerVC sender:nil];

}
注意设置网络:将HTTPS退回HTTP
AVPlayerViewController_第1张图片
屏幕快照 2016-07-30 16.09.38.png

你可能感兴趣的:(AVPlayerViewController)