码迷,mamicode.com
首页 > 其他好文 > 详细

MPMoviePlayerController的用法

时间:2015-08-31 19:54:44      阅读:243      评论:0      收藏:0      [点我收藏+]

标签:

 

MPMoviePlayerController的一些用法 


delay框架手机

1.计算使用MPMoviePlayerController播放的视频的长度有两种方法:


第一种方法

NSDictionary *opts = [NSDictionary dictionaryWithObject:[NSNumber numberWithBool:NO]                                           forKey:AVURLAssetPreferPreciseDurationAndTimingKey]; 

AVURLAsset *urlAsset = [AVURLAssetURLAssetWithURL:videoUrloptions:opts]; 

NSInteger totalSecond = urlAsset.duration.value / urlAsset.duration.timescale; 

使用上述代码需要插入AVFoundation框架。播过我用这种方法计算视频长度时,会延迟其后代码的执行,不知道什么原因。


第二种方法

使用MPMoviePlayerController的duration属性,当MPMoviePlayerController的duration未知时默认为0.0,如果duration确定,会发送MPMovieDurationAvailableNotification通知,接着duration的值将会更新为播放视频的长度,单位是秒。


2.视频什么时候开始播放


当视频开始播放时会发送MPMediaPlaybackIsPreparedToPlayDidChangeNotification,所以你只需要在注册

MPMediaPlaybackIsPreparedToPlayDidChangeNotification通知,当接收到此通知说明视频开始播放。


3.自定义播放器视图时怎么自定义声音控件


使用MPVolumeView控制系统的声音大小。通过改变MPVolumeView slider的值可以改变系统的声音,同时通过调节系统的声音按钮,slider的值也会跟着改变。

volumeView = [[MPVolumeView alloc] initWithFrame:CGRectMake(310, 180, 100, 20)];

volumeView.showsVolumeSlider = YES;

[backView addSubview:volumeView];

[volumeView release];


4.通过presentModalViewController调出MPMoviePlayer所在控制器,当通过dismissModalViewController移除控制器时,手机的状态栏可能会消失。解决办法:在dismissModalViewController调用函数

movieplayer.controlStyle = MPMovieControlStyleFullScreen;

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, delay * NSEC_PER_SEC), dispatch_get_current_queue(), ^{

        [UIApplication sharedApplication].statusBarHidden = NO;

    });


MPMoviePlayerController的用法

标签:

原文地址:http://my.oschina.net/u/2329800/blog/499709

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!