我已从
下载了源文件http://mobile.tutsplus.com/tutorials/iphone/mediaplayer-framework_mpmovieplayercontroller_ios4/
并且该应用程序运行正常,但当我尝试通过更改以下代码来换出我自己的视频时:
pathForResource:@"big-buck-bunny-clip" ofType:@"m4v"
到
pathForResource:@"example" ofType:@"mp4"
当我尝试播放视频时应用程序崩溃,我在输出中收到一条消息:
“2012-09-13 20:32:59.106 BigBuckBunny [1081:11f03] *由于未捕获的异常'NSInvalidArgumentException'终止应用,原因:' - [NSURL initFileURLWithPath:]:nil string parameter' * *第一次抛出调用堆栈: (0x1722022 0x10f6cd6 0x16caa48 0x16ca9b9 0x4e53b 0x4e4c5 0x2da4 0x1723e99 0x36d14e 0x36d0e6 0x413ade 0x413fa7 0x413266 0x3923c0 0x3925e6 0x378dc4 0x36c634 0x1e1aef5 0x16f6195 0x165aff2 0x16598da 0x1658d84 0x1658c9b 0x1e197d8 0x1e1988a 0x36a626 0x297d 0x28f5) 终止调用抛出异常(lldb)“
我的新视频文件位于包含原始big-buck-bunny-clip.m4v文件的文件夹中,我把它放在项目中。 我做错了什么,如何解决这个问题?
答案 0 :(得分:1)
我设法播放我自己的视频,转到Xcode中的文件并选中目标会员资格下的BigBuckBunny旁边的框
答案 1 :(得分:0)
检查文件存在且您传递的文件路径为nil:
NSString *filepath = [[NSBundle mainBundle] pathForResource:@"example" ofType:@"mp4"];
if([[NSFileManager defaultManager] fileExitsAtPath:filepath])
{
NSURL *fileURL = [NSURL fileURLWithPath:filepath];
MPMoviePlayerController *moviePlayerController = [[MPMoviePlayerController alloc] initWithContentURL:fileURL];
[self.view addSubview:moviePlayerController.view];
moviePlayerController.fullscreen = YES;
[moviePlayerController play];
}
else
{
NSLog(@"File not exists");
}