我正在使用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持续时间。我甚至试图用iPhone的相机播放视频 - 结果相同。
答案 0 :(得分:3)
问题出在NSURL中 - 我是以不正确的方式创建的。这是正确的代码:
NSString *rootPath = [[NSBundle mainBundle] resourcePath];
NSString *filePath = [rootPath stringByAppendingPathComponent:@"test-movie.mp4"];
NSURL *url = [NSURL fileURLWithPath:filePath isDirectory:NO];
答案 1 :(得分:1)
您是否尝试过设置视图框?
id parentView = [[CCDirector sharedDirector] openGLView];
[parentView addSubview:[player view]];
[[player view] setFrame:[parentView bounds]];