播放電影檔案:
ios
sdk中可以使用mpmovieplayercontroller來播放電影檔案。但是在ios裝置上播放電影檔案有嚴格的格式要求,隻能播放下面兩個格式的電影檔案。
? h.264 (baseline profile level 3.0)
? mpeg-4 part 2 video (simple
profile)
mpmovieplayercontroller可以播放本地視訊檔案,也可以播放網際網路上的視訊檔案。
首先在項目中需要引入media player 架構
項目-->targets-->build phases-->link binary with
libraries
點選左下角的+号
找到mediaplayer.framework并添加
在需要使用庫的地方添加下面的代碼:
[cpp]
#import <mediaplayer/mediaplayer.h>
本項目名為mediaplayertest,源碼如下:
videoplayerviewcontroller.h 頭檔案代碼:
#import <uikit/uikit.h>
@interface viewcontroller : uiviewcontroller
{
uibutton *playbtn;
mpmovieplayercontroller *movieplayer;
}
@property (retain, nonatomic) iboutlet uibutton *playbtn;
@property (retain, nonatomic) mpmovieplayercontroller *movieplayer;
- (ibaction)playvideo:(id)sender;
@end
videoplayerviewcontroller.m 實作檔案代碼:
#import "viewcontroller.h"
@interface viewcontroller ()
@implementation viewcontroller
@synthesize playbtn;
@synthesize movieplayer;
- (void)viewdidload
[super viewdidload];
self.movieplayer = [[mpmovieplayercontroller alloc] initwithcontenturl:
[nsurl urlwithstring:@"http://v.youku.com/player/getrealm3u8/vid/xnty2mtaxotuy/type/video.m3u8"]];
self.movieplayer.moviecontrolmode = mpmoviecontrolmodedefault;
[self.movieplayer.view setframe:cgrectmake(0, 0, 320, 380)];
// do any additional setup after loading the view, typically from a nib.
- (void)didreceivememorywarning
[super didreceivememorywarning];
// dispose of any resources that can be recreated.
- (ibaction)playvideo:(id)sender
nslog(@"into playvideo.");
[self.view insertsubview:[self.movieplayer view] atindex:10];
[self.movieplayer play];
mainstoryboard.storyboard:
将viewcontroller的playbtn和ib的button關聯起來
将button的touch up inside事件和view controller的playvideo操作關聯起來
運作結果:
參考: