2014-01-13 2 views
0

Я пытаюсь зациклить локальное видео, но у меня проблемы. Создание симулятора iphone будет успешным, но видео не будет воспроизводиться и не зацикливаться. Я нахожусь в середине создания приложения, которое просто воспроизводит видео в цикле после LaunchImage. Имеет ли он какое-то отношение к MPMoviePlayerController?Xcode5 MPMoviePlayer Как мне заставить его зацикливать локальный видеоклип?

Вот код: ViewController.h

#import <UIKit/UIKit.h> 
#import <MediaPlayer/MediaPlayer.h> 

@interface ViewController : UIViewController 

@end 

ViewController.m

#import "ViewController.h" 

@interface ViewController() 
@property (strong, nonatomic) MPMoviePlayerController *moviePlayer; 

@end 

@implementation ViewController 
@synthesize moviePlayer; 

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    // Do any additional setup after loading the view, typically from a nib. 
    NSString*thePath=[[NSBundle mainBundle] pathForResource:@"ColoredDiamond" ofType:@".mp4"]; 
    NSURL*theurl=[NSURL fileURLWithPath: thePath]; 

    self.moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:theurl]; 
    [self.moviePlayer.view setFrame:CGRectMake(40,197,240,160)]; 
    [self.moviePlayer prepareToPlay]; 
    [self.moviePlayer setShouldAutoplay:YES]; 
    [self.view addSubview:self.moviePlayer.view]; 

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(playBackFinished:) name:MPMoviePlayerPlaybackDidFinishNotification object:moviePlayer]; 
} 

- (void)didReceiveMemoryWarning 
{ 
    [super didReceiveMemoryWarning]; 
    // Dispose of any resources that can be recreated. 
} 

/* - (void) playbackFinished: (NSNotification*) notification{ 
    NSLog(@"playBackFinished"); 
    if(moviePlayer){ 
     [moviePlayer play]; 
    } 
} 
*/ 

@end 

ответ

0
self.moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:theurl]; 
[self.moviePlayer.view setFrame:CGRectMake(40,197,240,160)]; 
[self.moviePlayer prepareToPlay]; 

[self.moviePlayer setRepeatMode:MPMovieRepeatModeOne]; 

[self.moviePlayer setShouldAutoplay:YES]; 
[self.view addSubview:self.moviePlayer.view]; 

RepeatMode определяет, как видеопроигрыватель повторяет воспроизведение фильма.

@property (nonatomic) MPMovieRepeatMode repeatMode 

Значением по умолчанию для этого свойства является MPMovieRepeatModeNone.

Список доступных режимов повтора,

MPMovieRepeatModeNone, 
MPMovieRepeatModeOne 

Доступно в прошивкой 3.2 и выше.

Связанные Пример кода: MoviePlayer

Объявлен в: MPMoviePlayerController.h

+0

где я положил это в мой код? По какой-то причине приемник moviePlayerController неизвестен в моем коде. Так что мне нужно создать файл MPMoviePlayerController.h в моем проекте? – Jwoozy

+0

Я обновил свой ответ. также, пожалуйста, проверьте пример приложения, о котором я упомянул в ответ. –

+0

Когда я обновил код с ответом, я получил Thread 1: точка останова 1.1 на self.movePlayer = [[MPMovie ... line и в [[NSNotficationCenter ... Я получил Undeclared selector "playBackFinished." Почему этот компилятор не сыграл зацикленный .mp4 Ramshad? – Jwoozy

Смежные вопросы