Воспроизведение MPMoviePlayerController синхронно с AVAudioPlayer

Я пытаюсь добавить фильм во вступление в игру. В фильме нет звука / музыки. Однако у меня есть музыкальный цикл в фоновом режиме. Музыка несколько специфична в том, что вступление в музыку до тех пор, пока фильм, а затем темп ударяет немного быстрее.

Проблема, с которой я сталкиваюсь в этом, на некоторых устройствах, таких как iPod 4G, слишком быстро воспроизводит музыку, что в свою очередь нарушает последовательность видео. Это не происходит в моем iPhone 4S.

Я попытался найти какое-то уведомление о том, когда фильм начал играть, а затем начать музыку. Я не увенчался успехом.

Вот что я получил до сих пор:

-(void)viewDidAppear:(BOOL)animated { [super viewDidAppear:animated]; MPMoviePlayerController *player = [[MPMoviePlayerController alloc] initWithContentURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"SplashVideo" ofType:@"mp4"]]]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(moviePlayerPlaybackDidFinish:) name:MPMoviePlayerPlaybackDidFinishNotification object:player]; [[player view] setFrame:CGRectMake(0, 0, 480, 320)]; [player setControlStyle:MPMovieControlStyleNone]; [[self view] addSubview:[player view]]; // play movie [player play]; //musicPlayer is defined in the header [self setMusicPlayer:[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"SplashMusic" ofType:@"m4a"]] error:nil]]; [[self musicPlayer] setNumberOfLoops:loop]; [[self musicPlayer] prepareToPlay]; [[self musicPlayer] setDelegate:self]; } - (void)moviePlayerPlaybackDidFinish:(NSNotification*) aNotification { DLog(@"**********"); MPMoviePlayerController *player = [aNotification object]; [[NSNotificationCenter defaultCenter] removeObserver:self name:MPMoviePlayerPlaybackDidFinishNotification object:player]; [player stop]; [[player view] removeFromSuperview]; [player autorelease]; } 

В сводке , на iPhone 4S он играет безупречно, но на iPod 4G музыка начинается примерно за 2 секунды до того, как фильм делает, что заканчивается тем, что бросает интро. Что я могу сделать, чтобы фильм и музыка воспроизводятся синхронно?

Вещи, которые я не могу сделать, если иное не установлено:

  1. Я не могу поместить музыку в видео, так как музыка предназначена для просмотра нескольких просмотров.
  2. Я не могу создать фильм в анимации UIImageView.

Вот что я сделал, если кто-то столкнется с этим.

Я создал уведомление для: MPMoviePlayerLoadStateDidChangeNotification

Когда селектор был вызван, возвращая уведомление о MPMovieLoadStatePlaythroughOK я сыграл фильм и звуковую дорожку.

Надеюсь это поможет.

  • Воспроизведение видео на YouTube
  • Разница между prepareToPlay и Play в MPMoviePlayerController
  • MPMoviePlayerController изменение скорости видео
  • Воспроизведение загруженного видео из каталога документов с помощью Cocoa-Touch
  • MPMoviePlayerController устарел, что теперь?
  • Предотвращение поворота и масштабирования MPMoviePlayerController на портрет при полноэкранном режиме
  • Список расширений файлов для поддерживаемых типов мультимедиа MPMoviePlayerController
  • MPMoviePlayerController показывает черный пустой экран
  • MPMoviePlayerController: получение надежного пропущенного currentPlaybackTime
  • Ошибка MPMoviePlayerController Simulator
  • Кнопка Localize Done для MPMoviePlayerViewController
  • Давайте будем гением компьютера.