У меня возникла проблема с воспроизведением нескольких видео на iPAD. Я пытаюсь воспроизвести несколько миниатюр видео в одном представлении. Вы можете сказать, что это очень похоже на камеру видеонаблюдения. Ну, я понятия не имею. Пожалуйста помогите. Заранее спасибо...
Воспроизведение нескольких видео на iPAD
Ответы (4)
MPMoviePlayerController позволяет использовать несколько экземпляров, но только один из них может воспроизводить свой фильм в любой момент времени.
Это упоминается здесь: http://developer.apple.com/library/ios/#documentation/mediaplayer/reference/MPMoviePlayerController_Class/MPMoviePlayerController/MPMoviePlayerController.html
Из статьи:
Примечание. Хотя вы можете создать несколько объектов MPMoviePlayerController и представить их представления в своем интерфейсе, только один проигрыватель фильмов может одновременно воспроизводить свой фильм.
Вы не можете использовать MKMediaFramework для воспроизведения нескольких видео. Однако вы можете сделать это с помощью AVFoundation Framework более низкого уровня. Это не так сложно, как вы думаете, и я сделал туториал по этому вопросу: http://www.sdkboy.com/?p=66
По сути, вам нужно расширить UIView, чтобы он содержал AVPlayerLayer, на который направляется вывод объекта AVPlayer, после чего вы можете создать несколько экземпляров этого UIView, которые вы загружаете видео с помощью экземпляров AVPlayer.
На самом деле это довольно просто сделать на iPad.
В основном вам нужно несколько объектов MPMoviePlayerController.
Каждый объект MPMoviePlayerController имеет свойство view, вам просто нужно установить рамки views на разных объектах MPMoviePlayerController, чтобы они соответствовали тому, как вы хотите, чтобы он выглядел.
Вот простой пример использования двух объектов MPMoviePlayerController и двух разных frames:
MPMoviePlayerController *player =
[[MPMoviePlayerController alloc] initWithContentURL: myURL];
[[player view] setFrame: yourFrame1];
[myView addSubview: [player view]];
// ...
[player play];
MPMoviePlayerController *player2 =
[[MPMoviePlayerController alloc] initWithContentURL: myURL2];
[[player2 view] setFrame: yourFrame2];
[myView addSubview: [player2 view]];
// ...
[player2 play];
Может быть, при создании WebView и использовании экземпляра видео HTML5 вы можете запускать несколько видео одновременно.