Aide pour diffusion de vidéo en Streaming : Moi -> Serveur -> Clients

WRInaute impliqué
Bonjour à tous,

Je souhaite développer une webTV en utilisant le principe suivant :
1. Je visionne une vidéo sur mon ordinateur avec VLC
2. Cette vidéo est envoyée en streaming sur mon serveur
3. Mes visiteurs peuvent regarder cette vidéo en direct

Ce qui fait qu'au final, mes visiteurs voit en temps réel ce que je regarde.
Concrètement, ce système servirait à diffuser, en temps réel , des parties Xbox 360 sur Internet.

Dans ma tête, ca semble tout simple, mais techniquement, j'ai un peu de mal à trouver comment faire, quoi installer sur mon serveur pour diffuser aux clients en direct la vidéo que je lui envoie, etc. J'ai lu la doc de videolan, mais je suis toujours autant pommé :(
C'est surtout au niveau du serveur que je bloque. J'ai bien compris que, de mon coté, de devais diffuser ma vidéo en indiquant l'ip de mon serveur, mais comment faire pour qu'il la récupère et la rediffuse ensuite ?

Concrètement, que dois-je installer et configurer sur mon serveur dédié (sous débian) pour être capable de diffuser ma vidéo ?

Désolé de ne pas être très clair dans mon explication, j'ai un peu de mal à trouver les mots justes pour décrire ce que je veux faire (c'est certainement ce qui fait que je ne trouve pas de tuto détaillé expliquant comment faire ce que je veux).

Mon idée en dessin :D

Code:
                        |-------> Client
                        |-------> Client
Moi -------> Serveur ---|-------> Client
                        |-------> Client
                        |-------> Client

C'est clair non ? ^^

Merci d'avance à tous ceux qui sauront m'aiguiller :)
 
WRInaute accro
Je ne dis pas que cela est la solution parce que je n'ai jamais essayé de faire un truc comme ça et d'autant plus, je n'ai jamais essayé VLC en support externe.
Mais ce que tu expliques ressemble à du p2p. Récemment Adobe à mis en place un nouveau protocole propriétaire qui s'appelle RTMFP qui permet justement de faire (entre autre) de la cam à la charoulette de 1 utilisateur diffusé sur X visionneurs.

Si ton projet est gratuit, tu devrais pouvoir ouvrir (si ce n'est pas déjà fait) un compte développeur chez Adobe pour le projet STRATUS, lien direct:
http://labs.adobe.com/technologies/stratus/

De là, tu accéderas à mine de services très sympa !
L'avantage de ce protocole, c'est que tes utilisateurs ne bouffent pas la bande passante de ton serveur puisque c'est du local et c'est du temps réel.

Inconvénient : tes utilisateurs devront être à jour sur le plugin flash minimum 10

Voilà bonne continuation dans ton projet... :wink:
 
WRInaute accro
ca n'a rien à voir avec du p2p.

C'est du webcast (diffusion en temps réel sur le web), cad qu''un participant à une session émet, ce que le serveur capte, et le serveur le redistribue ensuite sous-forme de co-brwosing aux autres participants (chacun a accès à une session du serveur, toutes les sessions sont identiques).

te lancer là-dedans etchqniuement est très lourd: énormément de considérations techniques, non de software, mais d'infrastructure: bande passante, gestion de la laten,ce différente selon les aprticipants, etc.. avec des problèmes qui font que les gros ont plus de chance de s'en trier que les petits.

Tu gagnerais donc à contacter un prestataire de webcasting et d'en discuter avec lui plutôt que d'essayer de réinventer la roue, ens achant que tu auras beaucoup de mal à bien la faire.
 
WRInaute impliqué
Merci pour vos réponses :)

Effectivement, c'est du webcast que je voudrais faire.
Je suis conscient qu'à grande échelle ce genre de projet peut être vraiment lourd à gérer, mais mon idée serait de faire des émissions ponctuelles (un ou deux soirs par mois maxi), du coup je pensais que je pourrais m'en sortir sans faire appel à un prestataire (sans doute payant, ce qui ne m'intéresse pas vraiment, tu t'en doute).

Je me rappelle, il y a longtemps, avoir fait ça mais avec de l'audio seulement, avec un serveur shoutcast, et tout semblait fonctionner correctement. La gestion de la vidéo est vraiment plus compliquée ?

Sinon effectivement je pourrais jeter un oeil à ce que proposent les pros du domaine, tu aurais quelques noms ?

Pour ma part, en service gratuit, j'ai trouvé ustream.tv, qui semble assez limité, mais qui pourrait dépanner. Quelqu'un a déjà essayé ?

Merci :)
 
WRInaute accro
Je n'ai personne à te conseiller en particulier.

Je ne connais pas de gratuit (je ne vois pas quel peut-être leur modèle, en dehors du freemium).

Pour ce que j'ens ais, le problème de taille critqiue d'infrastructure n'est pas lié au nombre de difussion mais au principe même. Après, sit u es peu regardant sur la qualité (session entre copains, etc.), tu peux évidemment bricoler des trucs qui marcheront: technbqiuement, ce n'est pas franchement différent que de diffuser sur le web une image de webcam... c'est dans les détails que cela va se jouer.
 
WRInaute accro
La différence entre l'audio et la video c'est le débit... De l'audio ça fait entre 50 et 200 kbit/s en général, de la vidéo de bonne qualité c'est plutôt 500 à 2000 kbit/s (et quelquefois beaucoup plus)... Donc tu vas consommer beaucoup de bande passante, et tu risques de rencontrer des limites imposées par ton hébergeur.

Un truc qui m'échappe: à la base, tu dis que tu pars d'une vidéo, donc un fichier déjà enregistré? Quel est l'intérêt de diffuser ça comme ça, plutôt que de juste mettre le fichier sur le serveur et permettre à chacun de la consulter comme il veut? Le webcast c'est utile pour du diret plus qu'autre chose.

L'un des problèmes aussi c'est que pour faire du webcast, il faut tenir compte des capacités de chaque "récepteur". Soit tu fais un flux unique qui "rentre" sur la connexion la plus lente, soit il faut faire plusieurs débits différents et transcoder en conséquence (ce qui, en temps réel, risque d'être très consommateur de ressources). On va supposer que tu pars sur un débit unique "qui passe partout" (y compris sur ton upstream de chez toi à ton serveur, souvent un point bloquant).

A priori tu peux effectivement utiliser VLC sur ton serveur pour faire ça, il y a une documentation assez complète avec plein d'exemples, ça devrait pas être très difficile.

Sinon tu peux essayer ça:
http://www.stickam.com/

Jamais essayé, mais ça a l'air de faire ce que tu veux.

Jacques.
 
WRInaute accro
Voilà, jcaron a entièrement raison.

Et avec un peu de recul, si ce que tu veux c'ets simplement partager avec tes amis une session de PS* ou autre console, il te suffit enf ait d'utiliser un PC sur lequel tu feras tourner un soft de conférence web, et que tu partageras avec tes amis.
 
WRInaute impliqué
Merci pour les réponses. Si c'était simplement un ficher à diffuser il n'y aurait aucun soucis, mais ce que je souhaite faire, c'est diffuser en direct ce qu'il se passe sur ma Xbox pendant que je joue :)

Je viens de mettre en place un serveur Shoutcast, et donc dans le principe, tout fonctionne :
- je joue sur ma Xbox
- je récupère la vidéo via ma carte d'acquisition
- je diffuse la vidéo vers mon serveur à l'aide de NSVCap
- Et enfin le serveur diffuse la vidéo

Il y a encore quelques soucis, notamment au niveau de l'intégration dans une page web, puisque le embed n'est apparemment compatible qu'avec IE (je n'ai pas trouver d'add-on pour Firefox). Mais la vidéo finale est beaucoup plus fluide que celles que j'ai pu voir sur stickam.com.

Enfin, en ce qui concerne le débit, la vidéo que j'envoie n'est qu'en 512kbits, donc ça devrait largement passer chez tout le monde, et le but est de proposer de visionner et commenter en direct la finale du championnat de France Forza 3, donc même si ca peut attirer un peu de monde, je pense pas qu'il y aura 150 000 clients :)

Bref, pour l'instant je pense que je vais rester avec mon serveur shoutcast qui est tout léger
Merci à tous pour votre aide :)
 
Discussions similaires
Haut