您的位置:首页 > 移动开发 > IOS开发

iOS 视频相关

2016-04-14 11:47 627 查看

视频代码

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.

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: