视频代码
import “playViewController.h”
@interfaceplayViewController ()
@end
@implementation playViewController
- (void)viewDidLoad {
[superviewDidLoad];
self.view.backgroundColor=[UIColorwhiteColor];
UIButton *videoPlayer = [UIButtonbuttonWithType:UIButtonTypeCustom];
[videoPlayer setImage:[UIImageimageNamed:@"play1.png"] forState:UIControlStateNormal];
[videoPlayer setImage:[UIImageimageNamed:@"play.png"] forState:UIControlStateHighlighted];
UIImage *playImage = [selfthumbnailImageForVideo: [NSURLfileURLWithPath:[[NSBundlemainBundle] pathForResource:@"popeye"ofType:@"mp4"]]];
[videoPlayer setBackgroundImage:playImage forState:UIControlStateNormal];
videoPlayer.frame = CGRectMake(self.view.frame.size.width/8.0, 90, self.view.frame.size.width*3/4.0, self.view.frame.size.width/2.0);
[videoPlayer addTarget:selfaction:@selector(buttonEvent:) forControlEvents:UIControlEventTouchDown];
videoPlayer.tag = 5;
[self.view addSubview:videoPlayer];
UILabel *locallabel=[[UILabelalloc]initWithFrame:CGRectMake(self.view.frame.size.width/8.0, self.view.frame.size.width/2.0+90, self.view.frame.size.width*3/4.0, 60)];
locallabel.textAlignment=NSTextAlignmentCenter;
locallabel.text=@"本地视频播放";
[self.view addSubview:locallabel];
NSURL *moveURl = [NSURLURLWithString:@"http://124.232.154.173/youku/67774226A883683168CDDA659A/03000805005153359910D703BAF2B17CDDDAF7-77C8-0F5A-F0BC-6BD2DA2B0B00.mp4"];
UIButton *netPlayer = [UIButtonbuttonWithType:UIButtonTypeCustom];
[netPlayer setImage:[UIImageimageNamed:@"play1.png"] forState:UIControlStateNormal];
[netPlayer setImage:[UIImageimageNamed:@"play.png"] forState:UIControlStateHighlighted];
UIImage *netPlayerImage = [self thumbnailImageForVideo:moveURl];
[netPlayer setBackgroundImage:netPlayerImage forState:UIControlStateNormal];
netPlayer.frame = CGRectMake(self.view.frame.size.width/8.0, self.view.frame.size.width/2.0+160, self.view.frame.size.width*3/4.0, self.view.frame.size.width/2.0);
[netPlayer addTarget:selfaction:@selector(netEvent:) forControlEvents:UIControlEventTouchDown];
[self.view addSubview:netPlayer];
netlabel.textAlignment=NSTextAlignmentCenter;
netlabel.text=@"网络视频播放";
[self.view addSubview:netlabel];
// Do any additional setup after loading the view.
}
获取视频封面,本地视频,网络视频都可以用
(UIImage*) thumbnailImageForVideo:(NSURL *)videoURL {
AVURLAsset *asset = [[AVURLAsset alloc] initWithURL:videoURL options:nil]; AVAssetImageGenerator *gen = [[AVAssetImageGeneratoralloc] initWithAsset:asset]; gen.appliesPreferredTrackTransform = YES; CMTime time = CMTimeMakeWithSeconds(2.0, 600); NSError *error = nil; CMTime actualTime; CGImageRef image = [gen copyCGImageAtTime:time actualTime:&actualTime error:&error]; UIImage *thumbImg = [[UIImage alloc] initWithCGImage:image]; return thumbImg;
}
本地视频播放
-(void)buttonEvent:(UIButton*)button{
NSURL *moveURl =[NSURLfileURLWithPath:[[NSBundlemainBundle] pathForResource:@"popeye"ofType:@"mp4"]];
if (_moviePlayer==nil) {
_moviePlayer = [[MPMoviePlayerViewControlleralloc] init];
}
_moviePlayer.moviePlayer.movieSourceType=MPMovieSourceTypeFile;
[_moviePlayer.moviePlayer setContentURL:moveURl];
[selfpresentMoviePlayerViewControllerAnimated:_moviePlayer];
[_moviePlayer.moviePlayerplay];
}
网络视频播放
-(void)netEvent:(UIButton*)button
{
NSURL *moveURl = [NSURLURLWithString:@”http://124.232.154.173/youku/67774226A883683168CDDA659A/03000805005153359910D703BAF2B17CDDDAF7-77C8-0F5A-F0BC-6BD2DA2B0B00.mp4“];
if (_moviePlayer==nil) {
_moviePlayer = [[MPMoviePlayerViewControlleralloc]init];
}
_moviePlayer.moviePlayer.movieSourceType=MPMovieSourceTypeStreaming;
[_moviePlayer.moviePlayer setContentURL:moveURl];
[selfpresentMoviePlayerViewControllerAnimated:_moviePlayer];
[_moviePlayer.moviePlayerplay];
}
(void)didReceiveMemoryWarning {
[superdidReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}