15

ビデオを再生しようとすると、MPMoviePlayerController がクラッシュします。

これはシミュレーターでのみ発生し、デバイスでは正常に動作します。

エラーは次のとおりです。

2012-10-25 16:46:24.033 TheFasterChef[8529:14303] [MPAVController] Autoplay: Disabling autoplay for pause
2012-10-25 16:46:24.035 TheFasterChef[8529:14303] [MPAVController] Autoplay: Disabling autoplay
2012-10-25 16:46:24.172 TheFasterChef[8529:14303] [MPAVController] Autoplay: Skipping autoplay, disabled (for current item: 1, on player: 0)
2012-10-25 16:46:24.190 TheFasterChef[8529:14303] [MPAVController] Autoplay: Enabling autoplay
2012-10-25 16:46:24.227 TheFasterChef[8529:14303] [MPAVController] Autoplay: Likely to keep up or full buffer: 0
2012-10-25 16:46:24.227 TheFasterChef[8529:14303] [MPAVController] Autoplay: Skipping autoplay, not enough buffered to keep up.
2012-10-25 16:46:24.232 TheFasterChef[8529:14303] [MPAVController] Autoplay: Enabling autoplay
2012-10-25 16:46:24.238 TheFasterChef[8529:14303] [MPCloudAssetDownloadController] Prioritization requested for media item ID: 0

私のコードは、MPMoviePlayerController を呼び出す標準メソッドです。

.h ファイル内:

@property (retain) MPMoviePlayerController *videoPlayer;

.m ファイル内:

NSBundle *appBundle = [NSBundle mainBundle];
//NSString *contentURLString = [appBundle pathForResource:videoIdentifier ofType:@"mp4"];
NSString *contentURLString = [appBundle pathForResource:@"test" ofType:@".mp4"];
NSURL *contentURL = [NSURL fileURLWithPath:contentURLString];

self.videoPlayer = [[MPMoviePlayerController alloc] initWithContentURL:contentURL];
[self.videoPlayer prepareToPlay];
[self.videoPlayer.view setFrame: self.view.bounds];
[self.view addSubview:self.videoPlayer.view];
[self.videoPlayer prepareToPlay];
[self.videoPlayer play];

このコード スニペットを別のビュー コントローラーで試してみましたが、同じエラー結果が得られました。

このスニペット コードを新しいプロジェクトで試してみましたが、問題なく動作します。

他に何がこのエラーを引き起こしている可能性がありますか?

ここでの答えは私にとっては解決しませんでした。

4

4 に答える 4

57

解決策: ブレークポイント タブから「すべての例外」を削除します。
この回答は、上記のティルのコメントからのものです。私はこの問題を抱えていましたが、コメントであるため、答えをほとんど見逃していました。ティルの答えが私を助けてくれたので、これが私のような他の誰かに役立つことを願っています.

例外

于 2013-05-16T02:40:14.913 に答える
5

あなたは自分で答えを出しました。これは純粋にシミュレータの問題です。一般に、メディア関連の API は、デバイス上で (場合によってはのみ) より適切に機能します。

于 2013-02-03T17:33:37.963 に答える
2

さらに良いことに、他のことが必要な場合は、「すべての例外」を (削除するのではなく) 無効にします。

于 2013-07-22T11:47:38.813 に答える
0

シミュレーターはmp4ではなくmovに対応しているようです。ビデオをmovに変換した後、シミュレーターで問題なく動作しました。

于 2013-12-11T07:10:03.053 に答える