和视频播放有关的目录如下:
FFMpeg视频MetaData函数--av_dump_format()
AVPlayer播放器
FFMpeg 播放视频
直播秒开
由于MPMoviePlayerController的高度封装,导致定制界面基本不可能实现。iOS9.0之后AVFoundation框架中提供了AVPlayerViewController来替代MP,使用也是非常简单。
使用时导入2个头文件:
#import <AVFoundation/AVFoundation.h>
#import <AVKit/AVKit.h>
设置下资源路径Url和是否显示控制条就能快速的创建一个播放器了。
- (void)viewDidLoad
{
[super viewDidLoad];
// 设置资源路径
NSString *path = [[NSBundle mainBundle] pathForResource:@"1" ofType:@"mp4"];
NSURL *url = [NSURL fileURLWithPath:path];
AVPlayer *avPlayer= [AVPlayer playerWithURL:url];
// player的控制器对象
AVPlayerViewController *playerViewController = [[AVPlayerViewController alloc] init];
// 控制器的player播放器
playerViewController.player = avPlayer;
// 试图的填充模式
/*
可以设置的值及意义如下:
AVLayerVideoGravityResizeAspect 不进行比例缩放 以宽高中长的一边充满为基准
AVLayerVideoGravityResizeAspectFill 不进行比例缩放 以宽高中短的一边充满为基准
AVLayerVideoGravityResize 进行缩放充满屏幕
*/
playerViewController.videoGravity = AVLayerVideoGravityResizeAspect; // 是否显示播放控制条 playerViewController.showsPlaybackControls = YES; // 设置显示的Frame playerViewController.view.frame = self.view.bounds; // 将播放器控制器添加到当前页面控制器中 [ self addChildViewController:_playerViewController]; // view一定要添加,否则将不显示 [ self.view addSubview:playerViewController.view]; // 播放 [playerViewController.player play]; }效果如图所示

AVPlayer.png
AVPlayerViewController使用起来非常方便,但依然存在以下两个问题:
作者:Hardy_Hu
链接:https://www.jianshu.com/p/e3c6e0c77b9b
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。