Как транслировать видео на iPad с сервера? - PullRequest
2 голосов
/ 17 февраля 2011

Я транслирую видео в приложение для iPad с сервера.Я использую следующий код:

    NSURL *videoURL = [NSURL URLWithString:@"http://10.1.0.251/blah/videos/test.mp4"]; 
MPMoviePlayerViewController* playerController = [[MPMoviePlayerViewController alloc] initWithContentURL:videoURL];
playerController.moviePlayer.view.frame = CGRectMake(50, 50, 200, 200);
[self presentMoviePlayerViewControllerAnimated:playerController];
playerController.moviePlayer.movieSourceType = MPMovieSourceTypeStreaming;
[playerController.moviePlayer play];
[playerController release];
playerController=nil;

Это не дает мне никакого контроля над кадром для видео, а также проигрыватель завершает работу после однократного воспроизведения видео?Как я могу управлять кадром и разрешать «повторы»?

Следующий код позволяет мне использовать вышеуказанную функциональность на iPhone, а также на iPad (только локальное видео без потоковой передачи)

NSURL *url = [NSURL URLWithString:strVideo];
    moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:url];
    moviePlayer.view.frame = CGRectMake(50, 50, 480, 320);
moviePlayer.movieSourceType = MPMovieSourceTypeStreaming;
    moviePlayer.scalingMode=MPMovieScalingModeAspectFill;
    moviePlayer.shouldAutoplay = YES;
    moviePlayer.controlStyle=MPMovieControlStyleEmbedded;
    [self.view addSubview:moviePlayer.view];
           [moviePlayer play];

Какдобиться того же для iPad?

Ответы [ 2 ]

1 голос
/ 19 июля 2011

Хотя его данные поступают из сети, его тип данных - файл. Итак, измените код ниже:

playerController.moviePlayer.movieSourceType = MPMovieSourceTypeFile;
0 голосов
/ 23 марта 2011

Хорошо, вышеуказанная настройка не может быть достигнута в ipad.MPMoviePlayerController или MPMoviePlayerViewController не позволяют этого.

Для тех, кому нужны такие пользовательские кнопки закрытия, я должен использовать обходной путь для воспроизведения видео через UIWebView и иметь такие кнопки закрытия поверх него.Не элегантно, но выполняет свою работу.

РЕДАКТИРОВАТЬ: Если вам нужно сделать то же самое для видео, воспроизводимых локально, то это может быть достигнуто с помощью MPMoviePlayerController.

...