私はMPMoviePlayerControllerを使用して、Cocos2Dを使用するアプリケーション内でムービーを再生しています。しかし、ムービーが実行されると、ムービーのオーディオの最後の2/3しか再生されません。最初の3分の1は映画が黙っているということではありません。ムービーの再生が始まると、ムービーの1/3の位置でオーディオの再生が開始されます。言い換えると、オーディオとビデオは同期していません。MPMoviePlayerControllerのビデオとオーディオが同期していない
私はiOS 4.2を使用しており、最新のxCodeにアップグレードしました。以下は私が使用しているコードです。誰かがなぜこれが起こっているのか教えてもらえますか?
- (id) init
{
self = [super init];
if (self != nil)
{
NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle]
pathForResource:@"SomeMovie" ofType:@"m4v"]];
MPMoviePlayerController *moviePlayer = [[MPMoviePlayerController alloc]
initWithContentURL:url];
// Register to receive a notification when the movie has finished playing.
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(PlayBackDidFinish:)
name:MPMoviePlayerPlaybackDidFinishNotification
object:moviePlayer];
moviePlayer.controlStyle = MPMovieControlStyleNone;
moviePlayer.shouldAutoplay = YES;
[moviePlayer.view setTransform:CGAffineTransformMakeRotation((float)M_PI_2)];
[moviePlayer.view setFrame:[[UIScreen mainScreen] bounds]];
[[[CCDirector sharedDirector] openGLView] addSubview:moviePlayer.view];
}
return self;
}
- (void) PlayBackDidFinish:(NSNotification *)notification
{
MPMoviePlayerController *moviePlayer = [notification object];
[[NSNotificationCenter defaultCenter] removeObserver:self
name:MPMoviePlayerPlaybackDidFinishNotification
object:moviePlayer];
[moviePlayer.view removeFromSuperview];
[moviePlayer release];
}
ええ、私は持っています。私はiTunesでそれを演奏し、期待どおりに動作しました。 –