iPhone:同时播放音频和视频

iPhone:同时播放音频和视频,iphone,avfoundation,mpmovieplayer,Iphone,Avfoundation,Mpmovieplayer,我正在构建一个游戏应用程序,我需要在其中播放动画视频及其相应的声音(可能会因情况而异)。我已经准备好了所有的视频和声音文件,但我不能同时播放它们。我正在使用MPMoviePlayer for video和AVFoundation framework来播放音频。是否要同时运行这两个程序 视频: MPMoviePlayerViewController *videoController = [[[MPMoviePlayerViewController alloc] initWithCo

我正在构建一个游戏应用程序,我需要在其中播放动画视频及其相应的声音(可能会因情况而异)。我已经准备好了所有的视频和声音文件,但我不能同时播放它们。我正在使用MPMoviePlayer for video和AVFoundation framework来播放音频。是否要同时运行这两个程序

视频:

        MPMoviePlayerViewController *videoController = [[[MPMoviePlayerViewController alloc] initWithContentURL:[NSURL URLWithString:[cellDetails objectForKey:@"AVFile"]]] autorelease];
        [self presentMoviePlayerViewControllerAnimated:videoController];
关于声音:

 // Instantiates the AVAudioPlayer object, initializing it with the sound
AVAudioPlayer *newPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL: soundFileURL error: nil];
self.appSoundPlayer = newPlayer;
[newPlayer release];

[appSoundPlayer prepareToPlay];

appSoundPlayer.numberOfLoops = -1;
[appSoundPlayer setVolume: self.soundLevel];
[appSoundPlayer setDelegate: self];
[appSoundPlayer play];

谢谢。

您可以尝试使用AVMutableVideoComposition。试着看看,如果你需要任何帮助,请告诉我。我很乐意提供帮助。

您可以尝试使用AVMutableVideoComposition。试着看看,如果你需要任何帮助,请告诉我。我很乐意帮忙。

我个人会选择AVPlayer路线。我知道你可能想使用MPMoviePlayerViewController和AVAudioPlayer,但如果你只需要在AVMutableComposition和AVPlayer上投入多一点时间,你就可以做任何你想做的事情,甚至更多。这是值得投资的

简而言之,您将设置一个AVMutableComposition(也被认为是“资产”),其中包含曲目。这些曲目对应于音频和视频曲目。曲目可以从其他文件的所有或部分中提取,也可以根据需要插入空的音频/视频曲目部分。你将把一个视频放在一个视频轨道上,把任意数量的音频文件放在不同的音频轨道上。然后使用AVMutableComposition创建一个AVPlayer对象,并调用“play”消息。它可以非常精确地为您进行所有同步


实际上有一些很好的示例代码,但我不确定他是否能正确运行。

我个人会选择AVPlayer路线。我知道你可能想使用MPMoviePlayerViewController和AVAudioPlayer,但如果你只需要在AVMutableComposition和AVPlayer上投入多一点时间,你就可以做任何你想做的事情,甚至更多。这是值得投资的

简而言之,您将设置一个AVMutableComposition(也被认为是“资产”),其中包含曲目。这些曲目对应于音频和视频曲目。曲目可以从其他文件的所有或部分中提取,也可以根据需要插入空的音频/视频曲目部分。你将把一个视频放在一个视频轨道上,把任意数量的音频文件放在不同的音频轨道上。然后使用AVMutableComposition创建一个AVPlayer对象,并调用“play”消息。它可以非常精确地为您进行所有同步


实际上有一些很好的示例代码,但我不确定他是否能正确使用。

取决于您如何使用AVFoundation。想发布一些代码吗?请看编辑后的问题。谢谢取决于您如何使用AVFoundation。想发布一些代码吗?请看编辑后的问题。谢谢