2010-11-03 6 views
2

Je veux pouvoir (en direct) diffuser les images/vidéo DE l'appareil photo de l'iPhone à Internet. J'ai vu dans un Thread (streaming video FROM an iPhone) que c'est possible en utilisant beginConfiguration et commitConfiguration d'AVCaptureSession. Mais je ne sais pas comment commencer à concevoir cette tâche. Il y a déjà beaucoup de tutoriels sur la façon de diffuser de la vidéo sur l'iPhone, et ce n'est pas vraiment ce que je recherche. Pourriez-vous me donner des idées qui pourraient m'aider plus loin?iPhone: HTTP en streaming en direct sans aucun traitement côté serveur

+0

Avez-vous trouvé une solution? S'il vous plaît partager .. Merci d'avance .. –

+0

Non, je n'ai pas. Pardon! – jcdmb

Répondre

3

C'est difficile. Vous devriez être capable de le faire, mais ce ne sera pas facile.

Une façon qui ne serait pas en direct (ne répondant pas à vos besoins, mais qui mérite d'être mentionnée) est de capturer à partir de la caméra et de l'enregistrer dans un fichier vidéo. consultez le guide AV Foundation sur la façon de le faire. Une fois sauvegardé, vous pouvez ensuite utiliser le segmenter HTTP Live Streaming pour générer les segments appropriés. Apple a des applications pour Mac OSX, mais il existe aussi une version open source que vous pouvez adapter pour iOS. En plus de cela, vous devrez également exécuter un serveur http pour servir ces segments. Beaucoup de serveurs http là-bas, vous pouvez adapter. Mais pour le faire en direct, d'abord comme vous l'avez déjà trouvé, vous devez collecter des images de l'appareil photo. Une fois que vous avez ceux que vous voulez les convertir en h.264. Pour cela vous voulez ffmpeg. Fondamentalement, vous pousser les images à AVPicture de ffmpeg, créant un flux. Ensuite, vous devez gérer ce flux de sorte que le segmenter de streaming en direct le reconnaisse comme un périphérique h.264 de streaming en direct. Je ne suis pas sûr de savoir comment faire cela, et cela ressemble à un travail sérieux. Une fois que vous avez fait cela, vous devez avoir un serveur http, servant ce flux.

Ce qui pourrait être plus facile serait d'utiliser un flux basé sur RTP/RTSP à la place. Cette approche est couverte par les versions open source de RTP et ffmpeg prend entièrement en charge. Ce n'est pas en streaming live http, mais ça marchera assez bien.