web-dev-qa-db-fra.com

Streaming vidéo en direct avec PHP

J'ai une application de discussion PHP/AJAX/MYSQL. Je souhaite ajouter une conversation vidéo à mon application. Comment puis-je créer un flux vidéo en direct pour une utilisation pour des conférences/discussions vidéo en direct dans une application PHP. Quels sont les termes clés que je dois savoir si je voulais construire un tel système? Est-ce une bonne idée d'utiliser PHP en premier lieu? Y a-t-il quelque chose auquel je ne pense pas? Quelles autres langues puis-je utiliser, peut-être en conjonction avec PHP? 

32
smyles

Veuillez noter que le service décrit ci-dessous n'est plus disponible en tant que il était basé sur le média FLV (Flash)

Ce projet, qui utilise Red5, Flex et PHP pour le streaming et l'enregistrement de vidéos en direct, comporte de nombreuses fonctionnalités.

  1. Diffuser de la vidéo en direct aux téléspectateurs

  2. Enregistrez les flux de votre cam ou d'autres périphériques d'entrée vidéo sur le serveur

  3. Prévisualisez les flux et les fichiers enregistrés et imaginez l'image que vous souhaitez afficher pour la vidéo.

  4. Téléchargez les vidéos à partir de votre ordinateur et convertissez-les au format FLV qui peut être diffusé à l'aide de Red5.

  5. Choisissez parmi toutes les résolutions

  6. Peut être branché à n'importe quel script

  7. Chaque utilisateur de site Web peut disposer d’un répertoire distinct pour stocker ses vidéos et ses vignettes. Utilisez ce lien http://code.google.com/p/red5-flex-streamer/

7
Shani

PHP vous permettra de créer les pages de votre site qui composent vos applications de vidéoconférence et de discussion, mais il ne diffusera ni ne diffusera de vidéo pour vous - PHP s'exécute sur le serveur uniquement et rend le code HTML au navigateur client. .

Pour la vidéo, la première chose dont vous aurez besoin est un compte de streaming en direct avec quelqu'un comme Akamai ou les nombreux autres sur le terrain. L'utilisation de ce compte vous donne un point d'entrée pour votre vidéo, c'est-à-dire: le serveur sur lequel vous souhaitez diffuser votre vidéo en direct.

Ensuite, vous voulez diffuser votre vidéo sur les navigateurs - Windows Media Player, Flash ou Silverlight vous permettra de réaliser cela - en incorporant le contrôle approprié pour la technologie choisie dans votre page (avec PHP ou autre) et adresse de votre flux vidéo en direct.

PHP (ou un autre langage de script) serait utilisé pour construire la partie chat de l'application et rassembler le tout (le chat et le lecteur vidéo intégré).

J'espère que cela t'aides.

4
deepcode.co.uk

Pour les vidéoconférences en direct, vous ne pouvez pas ignorer la nécessité d’un serveur de diffusion en continu. 

Oui, flash vous permettra d'afficher la vidéo d'une webcam dans le contrôle de flash local, mais cela ne vous laissera pas ensuite envoyer cette vidéo sur le réseau - pour cela, vous avez besoin d'un serveur de streaming pour l'envoyer. 

Si vous envisagez de créer quelque chose comme cela, il est prudent de penser à la manière dont vous allez héberger la vidéo dès le début, car cela influencera la manière dont vous construisez l'application. Flash/Flex/Silverlight/Windows Media, etc., etc.

2
deepcode.co.uk

PHP/AJAX/MySQL ne suffira pas pour créer l’application de streaming vidéo en direct Il existe un fil similaire ici . Il suggère principalement d’utiliser Flex ou Silverlight.

1
Gaurav

Il y a beaucoup de "serveurs" "standards" qui fonctionneront dans votre environnement ... La plupart d'entre eux utilisent le Flex ou Silverlight susmentionné pour implémenter la vidéo elle-même, mais je suis sûr que tout fonctionnera sous LAMPE/PHP.

Les défis seront de choisir le meilleur logiciel parmi tout ce qui est disponible et d’obtenir que votre fournisseur d’hébergement vous permette de diffuser de la vidéo (il va sans dire que la diffusion en continu est lourde en bande passante).

1
Conan

Même problème/réponse ici , cité ci-dessous

Je suppose que vous voulez dire que vous voulez exécuter votre propre vidéo privée des appels, pas simplement des liens vers des appels Skype ou similaires. Vous avez vraiment 2 options ici: Hébergez-le vous-même, ou utilisez une solution hébergée et intégrez dans votre produit.


Auto-hébergé ----------------- C'est désordonné. Tout cela peut être accompli avec PHP, mais ce n'est probablement pas la solution la plus recommandée, car elle est pas le meilleur outil pour le travail de tous les côtés. Flash est beaucoup plus efficace lors de la capture et du transport par un utilisateur/utilisateur. Vous pouvez essayer de faites-le sans flash, mais vous aurez des maux de tête. HTML5 peut faire votre vie plus facile, mais si vous visez une compatibilité maximale, Flash est le moyen le plus simple pour créer le client. Ensuite, pour autant en tant que côté serveur qui relèvera l'audio/vidéo, vous pouvez écrire un serveur de discussion en php, mais il vaut mieux utiliser un logiciel libre projet, comme janenz00 's's mention de red5 , c'est déjà construit et interfacer avec elle par le biais de votre client (s'il n'en a pas déjà une ). Ou vous pouvez homebrew un client flash comme mentionné précédemment et raccordez-le à un serveur de diffusion en continu des deux côtés ... de toute façon se complique rapidement et dépasse mon expertise pour vous aider avec tout.


Service hébergé ----------------- All in, ma recommandation, à moins que vous ne souhaitiez administrer une configuration ridicule de nombreux serveurs complexes et en cas d'échec points consiste à utiliser un service hébergé tel que UserPlane ou similaire et décharger tous les traitement et travail technique aux personnes qui sont douées pour cela, puis s'inquiéter de l'interfaçage avec leur api et d'obtenir le client bien intégré à votre site. Vous serez un développeur plus heureux si vous le faites.

0
jimcavoli