Pergunta

Eu desenvolvi um aplicativo para iPhone que está executando o MPMoviePlayer (pré 3.2 SDK) sem problemas. Sei que essa é uma pergunta novato, mas como faço para que um filme seja exibido no novo MPMovieplayerviewController. Estou apenas recebendo áudio e desejo aprender o novo controlador de exibição. Portuei todo o meu aplicativo para o iPad e tudo o mais funciona bem, exceto em vídeo. Alguém poderia mostrar um exemplo usando o controlador de exibição de filme? Qualquer ajuda seria apreciada.

Obrigado,

Foi útil?

Solução

NSURL* videoURL = [NSURL URLWithString:url];
MPMoviePlayerController   moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:videoURL];
[moviePlayer prepareToPlay];
[moviePlayer play];
//For viewing partially.....
[moviePlayer.view setFrame:CGRectMake(50, 200, (self.view.frame.size.width)-100 , 400)];
moviePlayer.view.backgroundColor = [UIColor grayColor]; 
[self.view addSubview:moviePlayer.view];    

Outras dicas

Você precisa usar o mpmovieplayerviewController, não o mpmovieplayerController. Pesquise os documentos para mpmovieplayerviewController.

Experimente isso em seu controlador de visualização:

MPMoviePlayerViewController* theMoviePlayer = [[MPMoviePlayerViewController alloc] initWithContentURL:videoURL];
[self presentMoviePlayerViewControllerAnimated:theMoviePlayer];

Isso deve começar, mas verifique a referência da classe MPMoviePlayerViewController para obter informações detalhadas.

Eu lutei em todo o lugar com isso - o código de exemplo do Moviyer da Apple não reproduz vídeo, apenas áudio. Na verdade, levei anos para descobrir que isso foi Jogando áudio porque o vídeo de avião de amostra que eles fornecem não tem faixa de áudio !!! (Então, clico no botão e não recebo absolutamente nada.)

Obrigado por todas as sugestões aqui. Eu finalmente encontrei https://developer.apple.com/library/ios/#qa/qa2010/qa1240.htmlE mesmo isso é uma correção obscura.

Isso funciona: em InitandPlayMovie após o [MP Release]:

[[self.moviePlayer view] setFrame:[window bounds]];// size to fit parent view exactly
[window addSubview:[self.moviePlayer view]];

Bon Voyage e Feliz Voando :)

Altere esta linha:

MPMoviePlayerController  moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:videoURL];

para

MPMoviePlayerController *moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:videoURL];

você precisa do *

Tenho certeza de que está quebrado no simulador no momento! Eu recebo o mesmo comportamento (sem vídeo, mas ouço áudio) com o mais recente SDK e seu próprio código de exemplo do MPMoviePlayer com o próprio vídeo de maçãs que será reproduzido no simulador de iPad usando o Safari ... para que o vídeo seja reproduzido no simulador-ipad dentro do safari, mas não de de um aplicativo usando a classe MPMoviePlayer. Bug ou recurso, você decide. (Eu acho que está quebrado). As notas de lançamento para esta versão têm muitas mudanças acontecendo na classe MPMoviePlayer ...

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top