MPMoviePlayerController не хочет работать - PullRequest
2 голосов
/ 26 января 2011

Я использую cocos2d и хочу воспроизвести фильм.

Я создал подкласс CCLayer и переопределил его метод init следующим образом:

-(id) init
{
    self = [super init];
    if (self)
    {
        NSURL *url = [NSURL fileURLWithPath:@"common/test-movie.mp4"];
        MPMoviePlayerController *player = [[MPMoviePlayerController alloc] initWithContentURL:url];
        [[[CCDirector sharedDirector] openGLView] addSubview:[player view]];
        [player play];
    }
    return self;
}

Я запустил [[CCDirector sharedDirector] runWithScene:scene]; со сценой, содержащей только этот слой.Но ничего не отображается :( Просто черный экран.

РЕДАКТИРОВАТЬ

Кроме того, он всегда возвращает 0 длительности для каждого фильма. Я даже пытался воспроизвести видео скамера айфона - тот же результат.

Ответы [ 2 ]

3 голосов
/ 26 января 2011

Проблема была в NSURL - я его создал не правильно.Вот правильный код:

NSString *rootPath = [[NSBundle mainBundle] resourcePath];
NSString *filePath = [rootPath stringByAppendingPathComponent:@"test-movie.mp4"];
NSURL *url = [NSURL fileURLWithPath:filePath isDirectory:NO];
1 голос
/ 26 января 2011

Вы пытались установить рамку вида?

id parentView = [[CCDirector sharedDirector] openGLView];
[parentView addSubview:[player view]];
[[player view] setFrame:[parentView bounds]];
...