Question

Je recherche la meilleure solution possible qui me permettra d’incorporer une conférence audio / vidéo en direct entre 2 utilisateurs (2 seulement à ce stade) dans une plate-forme de jeu flash. Le chat vidéo n'est pas seulement une fonctionnalité supplémentaire, c'est la principale.

Je regarde principalement les implémentations open source ou quelque chose que je pourrai mettre en œuvre moi-même, mais je considérerai les produits commerciaux s'ils correspondent exactement à ce dont j'ai besoin.

Voici quelques éléments que j'ai examinés mais jusqu'à présent, je n'en ai trouvé aucun qui soit assez bon:

  1. Fonctionnalités P2P de Flash Player 10 semble prometteur, mais je suis conscient de le fait que Adobe n'a pas publié toute information sur le RTMFP protocole et qu'il n'y a pas serveur commercial qui le supporte À ce point.

  2. Diffusez tous les vidéo / audio en direct à travers un flash serveur (pas p2p), mais de mon expérience personnelle que vous ne recevez pas bonne conversation.
    Je pense que TokBox utilise cette méthode

  3. Les applets Java sont une solution possible aussi (pour effectuer p2p), mais je ne pense que ce sera une belle et élégante solution pour les combiner dans le jeu à ce stade (et nécessite que l'utilisateur de les autoriser). BTW, je n'ai pas trouvé d'implémentations utiles. Donc, si vous en connaissez, je vais les examiner.

  4. Le chat vidéo Google Gmail utilise un navigateur personnalisé (et propriétaire) plug-in qui fait le P2P et diffuse la vidéo / audio dans le lecteur Flash. C'est un possible solution, mais je préfère ne pas mettre en œuvre l'ensemble de la pile de protocoles P2P + plug-in de navigateur à ce stade et se concentrer sur d'autres aspects de la jeu lui-même. Je pense qu'ils utilisent un protocole basé sur XMPP similaire à Jingle et qu'ils ont publié un Jingle librarby , mais sans implémentation de la configuration vidéo.

  5. MODIFIER: En réponse à Branden:
    Je connais Adobe Stratus. Stratus est un service de rendez-vous hébergé bêta qui aide l'établissement communications entre Flash Player points de terminaison (serveur RTMFP).
    Ce la version actuelle du Stratus est avant-première et est conçu pour à des fins d'évaluation seulement. le le service n'est pas définitif.
    Il n'y a pas garantir que le service sera continuer à exister à l'avenir ou toute information sur l'avenir coût.
    C'est pourquoi je ne pense pas il peut être utilisé comme un commercial Solution. Du moins pas encore.

J'apprécierais vos suggestions et vos conseils. merci!

Était-ce utile?

La solution

  1. Le serveur en question s'appelle actuellement Stratus. Pour en savoir plus à ce sujet, consultez Adobe Labs .
  2. Vous pouvez absolument obtenir une diffusion en continu fluide avec une solution serveur avec Flash, mais vous devez disposer de suffisamment de bande passante pour prendre en charge tous les flux (4 flux pour une conversation à deux personnes - 2 en haut et en bas). Il existe quelques options ici, mais les deux meilleurs sont probablement le serveur interactif Flash Media d'Adobe et la source ouverte (et assez géniale) Red5 .
  3. Je conviens qu'une solution basée sur une applet serait inélégante, mais c'est peut-être le seul moyen d'obtenir une vidéo p2p pour le moment.
  4. Jingle est très cool, mais comme vous l'avez mentionné, les bits open source ne prennent pas encore en charge la vidéo. Je ne pense pas que la ré-implémentation soit une solution vraiment viable uniquement en raison du niveau d'effort requis.

Autres conseils

Le service de collaboration LiveCycle d'Adobe est une implémentation commerciale de Stratus. Vous payez à chaque utilisation.

Eh bien, je suis en retard pour la soirée sur ce projet, mais Frozen Mountain (pour qui je travaille) a maintenant un produit appelé IceLink qui fera ce que vous voulez. Il utilisera WebRTC en natif lorsque le navigateur le prend en charge et utilisera une applet Java.

En réponse aux questions spécifiques que vous avez posées:

  1. RTMFP: Oui, les communications propriétaires ne sont pas amusantes. Dommage qu'ils n'aient pas ouvert les spécifications.

  2. Le non-P2P prend définitivement un coup dur en termes de performances. De plus, l’évolutivité devient un problème.

  3. Les applets Java sont le seul moyen d’obtenir des ports UDP purs lorsque le navigateur n’a pas de WebRTC natif, ce qui est la route que nous avons empruntée.
  4. Les plugins personnalisés sont rudimentaires, sur plusieurs fronts, comme vous l'avez noté. Les applets Java ne sont pas géniaux, mais au moins, il ne s’agit pas d’un processus de téléchargement / installation complet:)

J'espère que ça aide un peu!

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top