0

Mon application permet aux vidéos d'être affichées dans UITableViewCells sur iOS.MPMoviePlayerController pour le fichier distant sur Amazon S3

Je stocke actuellement mes fichiers vidéo dans Amazon S3 et en utilisant CloudFront. J'ai obtenu ce code à partir des documents Apple:

MPMoviePlayerController *player = 

     [[MPMoviePlayerController alloc] initWithContentURL: myURL]; 

[player prepareToPlay]; 

[player.view setFrame: myView.bounds]; // player's frame must match parent's 

[myView addSubview: player.view]; 

// ... 

[player play]; 

J'ai implémenté ce code à peu près exactement dans ma propre application. Pour une raison quelconque, cela ne semble pas fonctionner pour moi. Je pense que cela peut avoir quelque chose à voir avec le fait que JWPlayer ne soit pas installé dans mon seau S3. Ma question est la suivante: Pour afficher une vidéo dans l'application qui permet de jouer en chargeant le contenu restant de la vidéo en arrière-plan, ai-je besoin de JWPlayer dans mon compartiment S3? ... ou est-ce inutile étant donné l'utilisation de MPMoviePlayerController.

Merci!

+0

Avez-vous testé 'myURL' si c'est le bon et si cela fonctionne à partir du navigateur? – danypata

+0

Yup, ça me donne un lien pour télécharger le fichier. Le fichier est lu une fois téléchargé ... – user2312407

+0

Votre contenu est-il codé en tant que flux HTTP M3U8 (c'est-à-dire, quelques fichiers de profil M3U8 et un grand nombre de fichiers fragmentés TS)? – Till

Répondre

0

Eh bien, le problème est que le MPMoviePlayerController ne peut pas jouer ce fichier parce que n'est pas transmis en continu. [[MPMoviePlayerController alloc] initWithContentURL: myURL]; attend un flux réseau, dans votre cas n'est pas un flux réseau. Ce que vous pouvez faire, c'est télécharger le fichier et l'enregistrer dans vos fichiers de documents d'application et le lire à partir de là.

+0

Merci pour la réponse. Je veux réellement diffuser les fichiers afin de réduire les coûts. J'ai configuré mon compte Cloudfront pour permettre le streaming ... cependant, la vidéo ne joue toujours pas. – user2312407

+0

@ user2312407 vous devez le vérifier dans le navigateur, si c'est en streaming dans le navigateur que vous savez que le problème est dans votre code. Mais formez votre extrait de code tout devrait fonctionner correctement si la vidéo est correctement configurée côté serveur. Vous devriez essayer de lire une vidéo sur youtube ou d'autres vidéos en streaming sur le web juste pour vérifier votre code. – danypata

+0

Merci danypata. Il y avait en effet un problème avec mes données. En outre, j'ai trouvé un bon tutoriel qui semblait aider à mettre tout correctement: http://www.techotopia.com/index.php/Video_Playback_from_within_an_iOS_6_iPhone_Application – user2312407