应用程序随着视频播放器一直崩溃

时间:2012-08-12 18:17:27

标签: ios

我正在尝试将视频代码放在Xcode中我正在使用故事板,但每次崩溃我都是错误:

由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:' * - [NSURL initFileURLWithPath:]:nil string parameter' * 首先抛出调用堆栈:

我将按钮连接到IBAction,但在按下按钮后,应用程序崩溃了

- (IBAction)playMove;
{
    NSString *url = [[NSBundle mainBundle]pathForResource:@"skill" ofType:@"flv"];    


    MPMoviePlayerController *theMovie = [[MPMoviePlayerController alloc]initWithContentURL:[NSURL fileURLWithPath:url]];
    theMovie.view.frame = CGRectMake(64, 100, 200, 150);
    [self.view addSubview:theMovie.view];

    [theMovie play];
}

我的文件是name.mp4大480 * 360但是它崩溃了这就是代码

- (IBAction)playMove;
{
    NSURL *url =[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"go" ofType:@"mp4"]];
    MPMoviePlayerViewController *player = [[MPMoviePlayerViewController alloc]initWithContentURL:url];
    [self presentMoviePlayerViewControllerAnimated:player];
    player.moviePlayer.movieSourceType = MPMovieSourceTypeFile;
    [player.moviePlayer play];

}

并且按钮连接正常我可以做些什么来解决它?

我试图在没有故事板和故事板的情况下使用,但总是崩溃。

这是错误:

NSInvalidArgumentException', reason: '*** -[NSURL initFileURLWithPath:]: nil string parameter'
*** First throw call stack:
(0x1e0a022 0x1348cd6 0x1db2a48 0x1db29b9 0xb9753b 0xb974c5 0x21dc 0x1e0be99 0x25814e 0x2580e6 0x2feade 0x2fefa7 0x2fe266 0x27d3c0 0x27d5e6 0x263d

1 个答案:

答案 0 :(得分:1)

因为你试图按MPMoviePlayer播放FLV文件。

这是来自MPMoviePlayerController支持格式的apple api文档:

支持的格式
此类播放iOS中支持的任何电影或音频文件。这包括流内容和固定长度文件。对于电影文件,这通常意味着扩展名为.mov,.mp4,.mpv和.3gp的文件,并使用以下压缩标准之一:

H.264 Baseline Profile Level 3.0视频,最高640 x 480,30 fps。 (基线配置文件不支持B帧。) MPEG-4 Part 2视频(简介) 如果您使用此类播放音频文件,则会在播放音频时显示带有QuickTime徽标的白色屏幕。对于音频文件,此类支持高达48 kHz的AAC-LC音频和高达48 kHz的MP3(MPEG-1 Audio Layer 3)立体声音频。