2010-10-25 47 views
0

J'ai déjà posé ces questions sans réponse correcte. J'espère que j'aurai une réponse ici.Problèmes avec VLC et la messagerie instantanée

Je développe un messager instantané en python et je voudrais manipuler le streaming vidéo/audio avec VLC. L'idée de base est que dans chaque client de messagerie instantanée, j'exécute une instance de VLC qui sert de serveur pour tous les utilisateurs que je veux et une autre instance de VLC qui reçoit et affiche tous les flux que les autres utilisateurs m'envoyer. Comme vous pouvez le voir, c'est une sorte de connexion P2P et j'ai beaucoup de problèmes.

Mon premier problème était que VLC ne peut gérer qu'un seul flux par port, mais j'ai résolu cela en utilisant VLM, le gestionnaire Videolan qui permet plusieurs flux avec une instance et sur un port. Mon deuxième problème était que ce genre de prise P2P a plusieurs inconvénients, comme si quelqu'un est derrière un NAT ou un routeur, vous devez faire des configurations manuelles pour transférer les paquets du routeur vers votre PC, et cela a aussi un autre inconvénient, Vous ne pouvez transférer que vers un PC, vous ne pourrez donc utiliser le programme que sur un seul poste de travail.

En outre, les flux ont été transportés dans le protocole HTTP, qui utilise TCP et c'est plutôt lent. Lorsque j'ai essayé de faire la même chose avec RTSP, je n'ai pas pu obtenir le flux en dehors de mon réseau local privé. Donc, cette prise P2P est très peu susceptible d'être implémentée avec succès par un amateur comme moi, car elle a tous les problèmes typiques de traversée NAT, des choses que je ne veux pas tripoter car ce n'est pas une application commerciale, juste un projet d'école, je dois terminer pour obtenir un diplôme en tant que technicien. Enfin, il m'a été recommandé d'utiliser un serveur dans une adresse IP bien connue et qui permettrait de résoudre le problème, une seule configuration de routeur et de laisser les deux extrémités des conversations être des clients. Je n'ai aucune idée de la façon de mettre en œuvre cette idée, s'il vous plaît toute aide est utile. Merci d'avance. Désolé pour toute erreur, je ne suis pas un expert en programmation/réseau et je ne suis pas une personne anglophone.

Répondre

0

Je pense qu'ils suggéraient que vous exécutiez votre programme sur un LAN qui n'a pas de ports bloqués.

+0

J'ai posté ce même commentaire dans mon autre question, mais je ne veux pas laisser cette question sans réponse, car cela peut aider les autres. Merci pour votre réponse, un développeur VLC m'a répondu et m'a dit que la façon la plus simple de le faire était de mettre en place un serveur VPN (l'autre solution impliquait moi-même dans mon client, mes compétences et mes besoins). Chaque client est maintenant connecté à un serveur VPN, ce qui ressemble à du streaming sur mon réseau privé. Au fait, mon projet d'école était terminé et j'ai obtenu une bonne note. – user430825

+0

ouais si VPN est une option qui fonctionnerait. – rogerdpack