Я пытаюсь воспроизвести короткое 6-секундное видео, используя MPMoviePlayerController, и хочу, чтобы оно повторялось бесконечно.Для этого я использовал следующий код:
NSString *filepath = [[NSBundle mainBundle] pathForResource:@"MyVideo" ofType:@"m4v"];
NSURL *fileURL = [NSURL fileURLWithPath:filepath];
moviePlayerController = [[MPMoviePlayerController alloc] initWithContentURL:fileURL];
moviePlayerController.view.frame = CGRectMake(10, 240, 300, 163);
moviePlayerController.controlStyle = MPMovieControlStyleNone;
moviePlayerController.repeatMode = MPMovieRepeatModeOne;
[self.view addSubview:moviePlayerController.view];
[moviePlayerController play];
Проблема в том, что видео начинает воспроизводиться в цикле по желанию, но затем в конечном итоге останавливается после случайного числа итераций.Обратите внимание, что размер файла видео очень мал (менее 500 КБ).
После некоторых размышлений я предположил, что такое поведение может быть связано с тем, что я запускаю приведенный выше код внутри основного потока,Чтобы запустить приведенный выше код в своем собственном потоке, я попробовал следующее:
- (void)viewDidLoad
{
[super viewDidLoad];
[NSThread detachNewThreadSelector:@selector(playVideo) toTarget:self withObject:nil];
}
-(void) playVideo
{
NSString *filepath = [[NSBundle mainBundle] pathForResource:@"MyVideo" ofType:@"m4v"];
NSURL *fileURL = [NSURL fileURLWithPath:filepath];
moviePlayerController = [[MPMoviePlayerController alloc] initWithContentURL:fileURL];
moviePlayerController.view.frame = CGRectMake(10, 240, 300, 163);
moviePlayerController.controlStyle = MPMovieControlStyleNone;
moviePlayerController.repeatMode = MPMovieRepeatModeOne;
[self.view addSubview:moviePlayerController.view];
[moviePlayerController play];
}
Теперь проблема заключается в том, что рамка представления MPMoviePlayerController просто выглядит как черный прямоугольник, где видео должно быть, но нетВоспроизведение видео.
Я был бы очень признателен за любую помощь в том, как заставить это работать так, как нужно (мне все равно, с дополнительными потоками или без).Все, что мне нужно, это непрерывно воспроизводить и воспроизводить видео.
Заранее спасибо!