MPMoviePlayerController的用法

 

MPMoviePlayerController的一些用法 


delay框架手機框架

1.計算使用MPMoviePlayerController播放的視頻的長度有兩種方法:ide


第一種方法函數

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

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

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

使用上述代碼須要插入AVFoundation框架。播過我用這種方法計算視頻長度時,會延遲其後代碼的執行,不知道什麼緣由。.net


第二種方法orm

使用MPMoviePlayerController的duration屬性,當MPMoviePlayerController的duration未知時默認爲0.0,若是duration肯定,會發送MPMovieDurationAvailableNotification通知,接着duration的值將會更新爲播放視頻的長度,單位是秒。視頻


2.視頻何時開始播放blog


當視頻開始播放時會發送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;

    });

相關文章
相關標籤/搜索