➢ YouTobe就是用MPMoviePlayerController实现的 ➢ MPMoviePlayerViewController只能全屏播放视频
● 上述两个类都定义在了MediaPlayer框架中

MPMoviePlayerController-01-加载资源
// 加载视频资源
NSString *urlString = [[NSBundle mainBundle]
pathForResource:@"sample_iTunes" ofType:@"mov"];
NSURL *url = [NSURL fileURLWithPath:urlString];
// 创建播放器
_player = [[MPMoviePlayerController alloc] initWithContentURL:url];
NSString *urlString = [[NSBundle mainBundle] pathForResource:@"sample_iTunes" ofType:@"mov"];
NSURL *url = [NSURL fileURLWithPath:urlString];
// 创建播放器
_player = [[MPMoviePlayerController alloc]
initWithContentURL:url];
MPMoviePlayerController-02-显示
_player.view.frame = self.view.bounds;
UIViewAutoresizingFlexibleHeight;
// 添加到控制器的view上
[self.view addSubview:_player.view];
// 播放
[_player play];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(videoStateChange)
name:MPMoviePlayerPlaybackStateDidChangeNotification object:_player];
// 监听播放器结束全屏
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(exitFullscreen)
name:MPMoviePlayerDidExitFullscreenNotification object:_player];
MPMoviePlayerController其他属性
@property(nonatomic) BOOL shouldAutoplay;
● 全屏显示
@property(nonatomic, getter=isFullscreen) BOOL
fullscreen;
- (void)setFullscreen:(BOOL)fullscreen animated:
(BOOL)animated;
● 截取视频中的图片
- (void)requestThumbnailImagesAtTimes:(NSArray
*)playbackTimes timeOption:(MPMovieTimeOption)option;
MPMoviePlayerViewController
● MPMoviePlayerViewController只能全屏播放
● 简单使用:
MPMoviePlayerViewController *play =
[[MPMoviePlayerViewController alloc] initWithContentURL:url];
➢ 依赖的框架:AVFoundation、AudioToolbox框架
➢ 播放短音效:加载音频文件生成SystemSoundID
● 较为底层、高级的音频\视频处理
➢ CoreAudio、CoreVideo框架