iOS基础 - 多媒体
一、播放視頻
iOS提供了叫做MPMoviePlayerController、MPMoviePlayerViewController的兩個(gè)類,可以用來(lái)輕松播放視頻
YouTobe就是用MPMoviePlayerController實(shí)現(xiàn)的
MPMoviePlayerViewController只能全屏播放視頻
上述兩個(gè)類都定義在了MediaPlayer框架中
二、MPMoviePlayerController支持的格式
MPMoviePlayerController繼承自NSObject,它內(nèi)部有個(gè)view用來(lái)展示視頻內(nèi)容,添加其他控制器的view上面即可顯示
MPMoviePlayerController可以播放的視頻格式有以下兩種:
H.264
MPEG-4?Part?2?video
支持的文件拓展名為:avi,mkv,mov,m4v,mp4等
可以到蘋果官網(wǎng):http://support.apple.com/kb/HT1425下載一些用來(lái)測(cè)試的視頻文件,文件都比較小
三、MPMoviePlayerController-01-加載資源
//?加載視頻資源
NSString?*urlString?=?[[NSBundle?mainBundle]?pathForResource:@"sample_iTunes"?ofType:@"mov"];
NSURL?*url?=?[NSURL?fileURLWithPath:urlString];
//?創(chuàng)建播放器
_player?=?[[MPMoviePlayerController?alloc]?initWithContentURL:url];
四、MPMoviePlayerController-02-顯示
//?設(shè)置尺寸
_player.view.frame?=?self.view.bounds;
_player.view.autoresizingMask?=?UIViewAutoresizingFlexibleWidth?|?UIViewAutoresizingFlexibleHeight;
//?添加到控制器的view上
[self.view?addSubview:_player.view];
//?播放
[_player?play];
五、MPMoviePlayerController-03-添加通知監(jiān)聽(tīng)
//?監(jiān)聽(tīng)播放狀態(tài)的改變
[[NSNotificationCenter?defaultCenter]?addObserver:self?selector:@selector(videoStateChange)?name:MPMoviePlayerPlaybackStateDidChangeNotification?object:_player];
//?監(jiān)聽(tīng)播放器結(jié)束全屏
[[NSNotificationCenter?defaultCenter]?addObserver:self?selector:@selector(exitFullscreen)?name:MPMoviePlayerDidExitFullscreenNotification?object:_player];
六、MPMoviePlayerController其他屬性
是否要自動(dòng)播放
@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繼承自UIViewController,它內(nèi)部封裝了一個(gè)MPMoviePlayerController
MPMoviePlayerViewController只能全屏播放
簡(jiǎn)單使用:
MPMoviePlayerViewController?*play?=?[[MPMoviePlayerViewController?alloc]?initWithContentURL:url];
轉(zhuǎn)載于:https://www.cnblogs.com/monicaios/p/3526337.html
總結(jié)
以上是生活随笔為你收集整理的iOS基础 - 多媒体的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: java HashMap的keyset方
- 下一篇: JQ实现仿淘宝条件筛选