Я пытаюсь воспроизвести короткое видео 6 секунд в моем представлении с помощью MPMoviePlayerController и хотел бы, чтобы он зацикливался на неопределенный срок. Я использовал следующий код для достижения этой цели:Возможные проблемы с потоком при циклировании MPMoviePlayerController video
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 просто выглядит как черный прямоугольник, где видео должно быть, но нет видео игр ,
Я бы очень признателен за любую помощь в том, как заставить это работать по своему желанию (мне все равно, с его или без дополнительных потоков). Все, что мне нужно - это постоянно воспроизводить видеоролик и цикл.
Заранее благодарен!