如今是视觉时代,视频需要用播放器播放,播放器又需要各种大小来满足大众的需要,那么iOS中的播放器又是怎么实现的呢,今天我就结合例子学习学习。
先简单了解下AVPlayer
1.支持视频格式: WMV,AVI,MKV,RMVB,RM,XVID,MP4,3GP,MPG …(系统要求当然是苹果的了)
2.支持音频格式: MP3,WMA,RM,ACC,OGG,APE,FLAC,FLV…
3.支持外部字幕: smi,srt,ass,sub,txt…
在实现视频可以播放的情况下全屏的概念每个人都应该首先想改变他的大小就可以了,然后再选择填充,如果只是简单的让playLayerView的的frame变成屏幕大小,那么周围会出现一些缺失,也就是周围有空缺,这时候就用填充,然后还要记住支持横屏的设置
一,先来初始化一个播放器,导入AVFoundation框架,单纯使用AVPlayer类就会发现他根本不鸟你,要将视频层添加至AVPlayerLayer中,这样才能将视频显示出来。
二,MediaPlayer的影片是放在UIView 裡面,而默认的layer是CALayer,AVPlayer必须是放在AVPlayerLayer裡面,AVPlayerLayer是CALayer 的子类別,这样就可以layer了。
例子:
*********
添加一个视频文件到bundle里面
NSString *filePath = [[NSBundle mainBundle] pathForResource:@"zhaoritian" ofType:@"mp4"];
NSURL *url = [NSURL fileURLWithPath:filePath];
**********
初始化player,并将它放入avPlayerlayer里面
_player = [[AVPlayer alloc] initWithURL:_localurl];
_avPlayerlayer = [AVPlayerLayer playerLayerWithPlayer:_player];
_avPlayerlayer.frame = self.view.layer.bounds;
**********
视频填充
_avPlayerlayer.videoGravity=AVLayerVideoGravityResizeAspect;
***********
视频支持左右旋转
- (UIInterfaceOrientationMask)supportedInterfaceOrientations {
return UIInterfaceOrientationMaskLandscape;
}
***********
调用方法play和pause进行播放和暂停
[self play];
[self pause];