视频

来源:互联网 发布:sql与数据库系统的关系 编辑:程序博客网 时间:2024/04/27 16:56

//

//  MyMoviePlayerViewController.h

//  PlayVideo

//

//  Created by zmx on 16/3/2.

//  Copyright © 2016 zmx. All rights reserved.

//


#import <UIKit/UIKit.h>


@interface MyMoviePlayerViewController : UIViewController


@property (nonatomic,copy) NSString *urlStr;


@end



//

//  MyMoviePlayerViewController.m

//  PlayVideo

//

//  Created by zmx on 16/3/2.

//  Copyright © 2016 zmx. All rights reserved.

//


#import "MyMoviePlayerViewController.h"

#import <MediaPlayer/MediaPlayer.h>


@interface MyMoviePlayerViewController ()


@property (nonatomic,strong) MPMoviePlayerController *player;


@end


@implementation MyMoviePlayerViewController


- (void)viewDidLoad {

    [superviewDidLoad];

    // Do any additional setup after loading the view.

    self.player = [[MPMoviePlayerControlleralloc] initWithContentURL:[NSURLURLWithString:self.urlStr]];

    [self.viewaddSubview:self.player.view];

    [self.playerrequestThumbnailImagesAtTimes:@[@(10.0)]timeOption:MPMovieTimeOptionNearestKeyFrame];

}


- (void)viewDidLayoutSubviews {

    [superviewDidLayoutSubviews];

    self.player.view.frame = self.view.bounds;

}


@end



//

//  ViewController.m

//  PlayVideo

//

//  Created by zmx on 16/3/2.

//  Copyright © 2016 zmx. All rights reserved.

//


#import "ViewController.h"

#import "MyMoviePlayerViewController.h"

#import <MediaPlayer/MediaPlayer.h>


@interface ViewController ()


@property (weak, nonatomic) IBOutletUIImageView *imageView;


@property (nonatomic,strong) MyMoviePlayerViewController *playerController;


@end


@implementation ViewController


- (IBAction)onTap:(UITapGestureRecognizer *)sender {

    self.playerController = [[MyMoviePlayerViewControlleralloc] init];

    self.playerController.urlStr = @"http://videohy.tc.qq.com/vhot2.qqvideo.tc.qq.com/x0176bhw48q.m701.mp4?vkey=49E5BEE5C151138BFA93431926F4A715B340E7C0C6025D76912982AF6CF2593765F815F11597EAE395DD1B4ACF1E9A6F34958DA1946B0657F0C3F38E98DB8FED54A42FFC73052E3DFB22A0DBF8530FF0A5469441088B8162&br=29&platform=2&fmt=auto&level=40&sdtfrom=v3010&ocid=277094316";

    [selfpresentViewController:self.playerControlleranimated:YEScompletion:nil];

}


- (void)finishMovie:(NSNotification *)noti {

    [self.playerControllerdismissViewControllerAnimated:YEScompletion:nil];

    self.playerController =nil;

}


- (void)captureMovie:(NSNotification *)noti {

    UIImage *image = [noti.userInfoobjectForKey:MPMoviePlayerThumbnailImageKey];

    self.imageView.image = image;

}


- (void)viewDidLoad {

    [superviewDidLoad];

    // Do any additional setup after loading the view, typically from a nib.

    NSNotificationCenter *notificationCenter = [NSNotificationCenterdefaultCenter];

    [notificationCenter addObserver:selfselector:@selector(finishMovie:)name:MPMoviePlayerPlaybackDidFinishNotificationobject:nil];

    [notificationCenter addObserver:selfselector:@selector(finishMovie:)name:MPMoviePlayerDidExitFullscreenNotificationobject:nil];

    [notificationCenter addObserver:selfselector:@selector(captureMovie:)name:MPMoviePlayerThumbnailImageRequestDidFinishNotificationobject:nil];

}


@end

0 0