Vlc Serveur De Vod Appelé Par La Xbox ?


Drj5
 Share

Messages recommandés

Bonjour,

voilà je voulais poser un petite question (ptêtre qu'elle est bête) :

je dispose d'une carte télé hybride DVB-Analogique sur mon ordinateur sous Linux Ubuntu.

A l'heure qu'il est je peux regarder la TNT sur ma télé en activant

la diffusion de flux sur le réseau via VLC (en OGG).

Mais vlà le bins : pour changer de chaine il faut que je rééxécute la commande qui va

bien sur l'ordi !

Est-ce qu'il y aurait par hasard un possibilité (via Python ou autre),

pour VLC se lance automatiquement en diffusion de flux sur la chaine

appropriée (analogique ou tnt ?) ?

Merci,

Lien vers le commentaire
Partager sur d'autres sites

Salut,

En fait, il faut que tu crées des configs dans ton serveur VOD pour chacune des chaînes dont tu as besoin, le mieux étant de créer un fichier de config que tu appelles au lancement de vlc en tant que serveur. Pour lancer ton serveur au démarrage, il y a une option ntservice qui permet d'installer VLC en tant que service, ça fonctionne sous windows mais sous linux? Au mieux tu te fais un batch de démarrage, il doit bien avoir cette possibilité, non? Enfin, pour changer de chaines c'est un peu plus chiant, puisqu'il te faudra stopper le flux en cours, et d'en relancer un autre, concrètement, tu crées un fichier M3U pour chacune des chaînes, et tu lances le M3U que tu veux regarder. C'est ce que j'ai fait dans gestVOD qui permet de gérer VLC en serveur VOD sous Windows, mais pour une liste de vidéo. Ah j'oubliais, XBMC ne supporte pas le rtsp nativement, il faut passer par un proxy, il s'appelle sur rtsp2http, tu pourras jeter un oeil sur le forum, tu as plusieurs posts qui en parlent.

Enfin, une dernière chose, je viens d'expliquer la méthode serveur VOD (RTSP), mais je pense que tu dois pouvoir faire la même chose pour le serveur HTTP de VLC que tu dois utiliser pour diffuser en OGG, non?

++

Lien vers le commentaire
Partager sur d'autres sites

Salut,

En fait, il faut que tu crées des configs dans ton serveur VOD pour chacune des chaînes dont tu as besoin, le mieux étant de créer un fichier de config que tu appelles au lancement de vlc en tant que serveur. Pour lancer ton serveur au démarrage, il y a une option ntservice qui permet d'installer VLC en tant que service, ça fonctionne sous windows mais sous linux? Au mieux tu te fais un batch de démarrage, il doit bien avoir cette possibilité, non? Enfin, pour changer de chaines c'est un peu plus chiant, puisqu'il te faudra stopper le flux en cours, et d'en relancer un autre, concrètement, tu crées un fichier M3U pour chacune des chaînes, et tu lances le M3U que tu veux regarder. C'est ce que j'ai fait dans gestVOD qui permet de gérer VLC en serveur VOD sous Windows, mais pour une liste de vidéo. Ah j'oubliais, XBMC ne supporte pas le rtsp nativement, il faut passer par un proxy, il s'appelle sur rtsp2http, tu pourras jeter un oeil sur le forum, tu as plusieurs posts qui en parlent.

Enfin, une dernière chose, je viens d'expliquer la méthode serveur VOD (RTSP), mais je pense que tu dois pouvoir faire la même chose pour le serveur HTTP de VLC que tu dois utiliser pour diffuser en OGG, non?

++

Bonjour nioc,

là est toute la question : peut-on appliquer un système genre VOD pour la diffusion via HTTP sous VLC ?

Je n'en sais rien pour l'instant.

Pour le démarrage auto sous Linux, pas de problème - je sais comment faire

je l'ai déjà fait pour Kaid.

Mais ça fonctionne comment grosso modo ?

Depuis la XBOX vous vous connectez via Python au serveur pour lui indiquer quel fichier-source ouvrir ?

En gros vous communiquez avec le serveur comme des Web services en passant des fichiers-commandes

via le réseau ?

Dans ce cas, dès que j'ai un peu de temps, je reluquerais le code source mais il me parait clair

que la diffusion HTTP direct via VLC est peu probable... le proxy sera alors une nécéssité.

Merci pour ta réponse rapide.

Modifié par Drj5
Lien vers le commentaire
Partager sur d'autres sites

Alors,

En fait le VOD est très spécifique dans le format de diffusion, donc qui dit VOD dit RTSP. Maintenant, le RTSP n'est utile que dans des cas bien particulier, notamment la diffusion de vidéos à durée limitée genre film ou extrait, ou bande annonce, ... Le cas de l'utilisation du VOD pour la diffusion de la télévision est bien plus rare mais non pas incongrue puisqu'elle permet de limiter la saturation du réseau, en effet une diffusion HTTP est une diffusion continue (pas de début, pas de fin), imagines donc diffuser en permanence 50 chaînes ou plus sur le réseau ... Ceci dit la diffusion en HTTP n'est pas impensable quand on utilise VLC puisqu'il suffit d'utiliser les bonnes commandes telnet pour lancer / arrêter un flux. Autre chose limitant dans l'utilisation du RTSP, c'est qu'actuellement peu de lecteurs sont capables de lire le flux RTSP. Si on prend le cas du serveur RTSP de VLC, seul VLC sur PC lit le flux!!! Maintenant pour la console XBOX et XBMC, il est nécessaire de modifier (transcoder) le flux afin qu'il soit utilisable par la console, en effet, un flux rtsp 'classique' sépare l'audio et la vidéo en des flux distincts. Ce qui est pratique pour un lecteur comme VLC mais non utilisable par mplayer de XBMC. Pour ma part, je transcode le flux en mpeg2ts pour n'avoir qu'un seul flux en sortie ce qui est exploitable par le proxy dans un premier temps puis par mplayer. Je parle ici de flux et non pas de fichier source car ce sont deux parties différentes. En effet, quand on prépare VLC en serveur VOD on lui donne l'adresse des fichiers sources ainsi que les options qui vont bien (type d'encodage audio, vidéo, format de sortie, type de sortie, ...), ces informations peuvent être passées soit par un fichier de config, soit par des commandes telnet, soit par une configuration via une interface graphique (http, client VLC). En plus de cela, on lui donne par quelle adresse le flux sera accessible, car à partir de là, il ne faut plus considérer le fichier source mais le flux (video + audio). Ensuite, pour le cas du VOD, le serveur VLC attends une demande d'un client pour lui diffuser le flux (et à lui seul), si un autre client fait une demande pour la même vidéo, un nouveau flux sera lancer. Ceci est pratique pour une vidéo à durée finie, ça permet au deuxième client de voir le film au début!! Pour le cas du HTTP, le serveur VLC attends une demande de la personne gérant le serveur pour diffuser le flux vers tous les clients autorisées. Ainsi, qu'un client se connecte ou non, le serveur s'en fout il diffuse. Donc, je pense que cette notion de web service ne s'applique que dans le cas du serveur VOD, pour le serveur HTTP, on peut dire que s'en est un dans le sens, ou un client maître peut lancer la diffusion via la bonne commande telnet, mais ce n'est pas aussi aisé!!!

Donc, là ou je veux en venir, c'est qu'à mon avis, il ne faut pas que tu rentres dans l'utilisation de VLC en serveur VOD (RTSP), mais que tu restes sur une utilisation HTTP. Ce sera beaucoup plus facile et surtout tu vois déjà le résultat d'après ce que tu marques dans ton premier mail. Selon moi, il faudrait simplement que tu saches lancer VLC en serveur HTTP en ligne de commande (ce n'est pas difficile) et que tu saches comment tu dois configurer une chaîne pour qu'elle soit diffuser via le serveur (tu dois déjà savoir le faire, puisque tu as déjà fais tes tests en OGG). Pour le reste je peux t'expliquer comment faire pour créer un fichier de config simple que tu placeras dans le dossier de VLC. Au moment ou tu lanceras VLC avec les bonnes options, tu devrais 'normalement' avoir les configurations automatiquement chargées dans VLC. Je marques normalement, car ça fonctionne en RTSP, et ça doit aussi fonctionner en HTTP. Ensuite comment lancer une chaîne à partir de XBMC. Il faudra développer une interface graphique ou apparaîtront les chaînes accessibles. Derrière on créera une petite fonction qui lancera les commandes telnet qui vont bien, et qui lancera une instance de mplayer sur la chaîne désirée. Pour tout cela tu pourras te baser sur le script d'AlexSolex sur la freebox (F2XTV) concernant la partie graphique et le lancement d'instances de mplayer et pour le reste, je pourrais te donner un coup de main, j'ai bosser sur les bibliothèques pour telnet et sur VLC en temps que serveur VOD, je pense que la partie HTTP est peu différente.

Bon, j'espère être resté clair, si tu as d'autres questions n'hésites pas!

++

Lien vers le commentaire
Partager sur d'autres sites

  • 1 month later...

Hello,

Je me permet de m'immicer dans la "conversation". Car le sujet m'interesse bigrement. Je suis sur free mais en zone non dégroupeé :( (pas de TV pour moi).

J'ai une carte skystar 2 (carte DVB-S) dans un serveur linux fedora.

Je souhaiterai regarde sur TV branché sur mon ma xbox+xbmc les chaines receptionnées et emis sur le reseau sur mon serveur+VLC .

Ca ressemble beaucoup à ce que fait Drj5 mais en DVB-S au lieu de DVB-T.

Je ne sais pas comment afficher le flux emis par VLC sur la XBOX. Pouvez-vous m'en dire plus ?

Merci d'avance.

Lien vers le commentaire
Partager sur d'autres sites

Salut,

Comment émets-tu ton flux? HTTP? UDP? sur quel port? Arrives tu à lire ton flux sur un autre ordi avec VLC? Ou simplement en local en ouvrant une autre instance de VLC et en lui demandant d'afficher le flux?

En règle général pour afficher un flux sur XBMC, il faut que tu saches le type de flux (HTTP, UDP, ...), l'IP du serveur de flux (ici c'est ton pc, donc l'IP de ton PC), le port sur lequel tu émets le flux, et si tu as un complément d'adresse pour accéder au flux. A partir de là, sur ton pc tu crées un fichier texte dont tu changes l'extension en strm dans lequel tu écris une seule ligne:

TYPE://IP_du_Serveur:Port/Complement

Il te reste à enregistrer et à l'envoyer sur la xbox. Ensuite tu ouvres ce fichier strm avec mplayer et ça devrait t'afficher ton flux.

Voili, voilou

Sinon, Drj5 tu as réussi?

++

Lien vers le commentaire
Partager sur d'autres sites

Salut,

Comment émets-tu ton flux? HTTP? UDP? sur quel port? Arrives tu à lire ton flux sur un autre ordi avec VLC? Ou simplement en local en ouvrant une autre instance de VLC et en lui demandant d'afficher le flux?

En règle général pour afficher un flux sur XBMC, il faut que tu saches le type de flux (HTTP, UDP, ...), l'IP du serveur de flux (ici c'est ton pc, donc l'IP de ton PC), le port sur lequel tu émets le flux, et si tu as un complément d'adresse pour accéder au flux. A partir de là, sur ton pc tu crées un fichier texte dont tu changes l'extension en strm dans lequel tu écris une seule ligne:

TYPE://IP_du_Serveur:Port/Complement

Il te reste à enregistrer et à l'envoyer sur la xbox. Ensuite tu ouvres ce fichier strm avec mplayer et ça devrait t'afficher ton flux.

Voili, voilou

Sinon, Drj5 tu as réussi?

++

Ah je suis vraiment une bille :0 !!!

Merci beaucoup Nioc. Pour l'instant je regarde sur un PC+windows+VLC le flux diffusé en HTTP.

La seule étape qui me manquait c'est le fichier .strm. Une bille je vous dit ;)

Bon j'essai cela ce soir (si j'ai le temps !).

Etape suivante déporter la télécommande IR pour piloter la carte skystar depuis la telecommande XBOX.

Je vais éplucher la doc LIRC. Je vous tiens au courant.

Merci encore NIOC :ok: .

Modifié par m3z
Lien vers le commentaire
Partager sur d'autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
 Share