F2xtv : Enregistrement Freeboxtv Sur Xbox


alexsolex
 Share

Messages recommandés

  • Réponses 760
  • Created
  • Dernière réponse

Top Posters In This Topic

Hey, je voulais te demander, où les prends tu ?

Parce que sur le site de Free on a (toutes ??) les chaines classées par bouquets ou par thème...

Lien vers le commentaire
Partager sur d'autres sites

Hey, je voulais te demander, où les prends tu ?

Parce que sur le site de Free on a (toutes ??) les chaines classées par bouquets ou par thème...

Salut à toi alex les logos je les prend sur le site de free,il y a une rubrique chaine puis ensuite bouquet basic et bouquet payant.

Lien vers le commentaire
Partager sur d'autres sites

oki

Sinon dans les multipostes pour PC on a des fois les listes complètes ca peut aider aussi :)

Lien vers le commentaire
Partager sur d'autres sites

Salut à tous,

Comme l'a annoncé Alex, je suis entrain de reprendre à zéro le projet pour le rendre plus universel, et je dois vous avouer qu'il y a énormément de boulot!

Donc, pour l'instant, ce qui est fait:

- le moteur est désormais un serveur HTTP qui s'occupera de gérer les différentes requêtes et de donner les réponses qui vont bien et de lancer les 'sous-programmes' qui vont bien comme le proxy rtsp2http ou le service d'enregistrement. De part son côté HTTP, il est indépendant de la plateforme, et donc le côte graphique pourra être développé de côté, seul l'interface HTTP sera intégrée (la partie GUI XBMC est actuellement en développement par un autre membre, FrostBox360 si je ne m'abuse, Alex?). Ce choix permettra d'avoir une interface personnalisée pour chaque support (Xbox, PC, PDA, ...) acceptant les GUI python.

- la partie proxy RTSP2HTTP a été reprogrammée totalement (pour ceux qui suivent oui de nouveau, mais ce ne sera plus une continuité du script de Puyb) et est intégré au serveur.

- la gestion des playlists pour chaque serveur avec une gestion particulière pour les playlists RTSP. Une simple demande au serveur et on récupère la playlist HTTP liée au serveur (HTTP, oui, les playlists RTSP sont retravaillées pour obtenir des playlists HTTP pointant vers le serveur), les playlists RTSP seront toujours accessibles en ajoutant un paramètre. Pour les GUI, les fichiers ne seront pas envoyées mais uniquement les informations pertinentes (le GUI n'a donc pas à s'occuper du traitement du fichier Playlist). La personnalisation des playlists ne sera pas gérée par le serveur mais par l'interface graphique, ainsi si on ne désire que certaines chaînes dans notre playlist, il faudra que la partie GUI fasse le tri.

Ce qu'il y a à faire:

- le reste ...

- la partie enregistrement,

- la gestion de flux particuliers : tels les flux de BelgacomTV passant par un serveur VLC, les flux ne sont pas RTSP mais broadcast, de plus BelgacomTV n'étant pas multiposte, on ne peut démarrer qu'un flux à la fois. Il faut donc prévoir un démarrage et un arrêt du flux. (quasi prêts, une version précaire ayant été faite dans un autre topic)

- une nouvelle version de gestvod (pour la gestion des streams en entrée et le choix dans le type de diffusion (RTSP ou Broadcast)

- des tests, pleins de tests, ...

Voilà,

++

Lien vers le commentaire
Partager sur d'autres sites

Je confirme la participation (très active) de frostbox dans la mise en place de l'interface graphique pour notre XBMC.

Je confirme aussi (nioc tu m'arrêtes si je délire) que le moteur en cours de création par Nioc sera multiplateforme. C'est à dire qu'il pourra tourner sur PC,xbmc, mac, linux etc... Un exe sera peut être même créé un jour ?? :)

Je confirme aussi que tout développeur logiciel, sur n'importe quel langage pourra à priori coder une interface pour piloter le système et donc programmer des enregistrements.

Bref, Nioc nous fait vraiment vraiment un très très bon taf que j'aurais été vraiment incapable de mener malgré tous les petits scripts que j'ai pu vous proposer jusque maintenant. Là, il nous fait un travail réellement d'un niveau supérieur. Je salue donc bien bas ton travail Nioc !

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

Non, ça va tu ne délires pas, actuellement le système est multiplateforme, je ne sais pas si ça durera mais j'essayes de faire en sorte.

En ce qui concerne les interfaces graphiques, le python est bien entendu privilégié car les interactions sont plus aisées, mais j'ajoute une sortie plus standard pour que le parsing des infos soient plus faciles. Donc, normalement suivant les paramètres, on aura une sortie standard (à parser), une sortie "python" (utilisation de la fonction loads du module pickle pour extraire les résultats), et une sortie HTML pour un affichage dans un navigateur. A noter un cas particulier pour les playlists qui auront en plus une sortie "fichier" (le fichier m3u).

Pour l'exe, ça ne devrait pas poser de problème pour windows, pour les autres os, ... je ne sais pas trop s'il existe une méthode facilement utilisable sinon d'installer python.

++

Lien vers le commentaire
Partager sur d'autres sites

Salut à tous,

Voilà pour avoir un système multiplateforme, j'aurais besoin de quelques informations pour les OS linux et mac.

Je voudrais principalement savoir comment récupérer l'espace disque disponible sur un lecteur.

Vu le format utilisé par linux, il n'existe pas vraiement de notion de lecteur, on prendra donc le répertoire d'enregistrement comme source.

En cherchant un peu sur notre ami gg, j'ai trouvé la requête suivante:

os.popen('df /monrepertoire/').readlines()[-1].split()[3]

J'aurais besoin de savoir si cette commande fonctionne sous les linux que vous utilisez et si vous récupérez bien que la valeur numérique. D'ailleurs quelle est son unité? ko? Mo? ...

Pour Mac, je n'ai encore rien trouvé. Est-ce que quelqu'un a une solution?

Merci d'avance

++

PS: D'ailleurs si des personnes du monde mac et linux sont intéressé pour faire des tests, n'hésitez pas à nous en informer (moi ou alex), on va bientôt commencer les tests.

Lien vers le commentaire
Partager sur d'autres sites

Salut à tous,

Voilà pour avoir un système multiplateforme, j'aurais besoin de quelques informations pour les OS linux et mac.

Je voudrais principalement savoir comment récupérer l'espace disque disponible sur un lecteur.

Vu le format utilisé par linux, il n'existe pas vraiement de notion de lecteur, on prendra donc le répertoire d'enregistrement comme source.

En cherchant un peu sur notre ami gg, j'ai trouvé la requête suivante:

os.popen('df /monrepertoire/').readlines()[-1].split()[3]

J'aurais besoin de savoir si cette commande fonctionne sous les linux que vous utilisez et si vous récupérez bien que la valeur numérique. D'ailleurs quelle est son unité? ko? Mo? ...

Pour Mac, je n'ai encore rien trouvé. Est-ce que quelqu'un a une solution?

Merci d'avance

++

PS: D'ailleurs si des personnes du monde mac et linux sont intéressé pour faire des tests, n'hésitez pas à nous en informer (moi ou alex), on va bientôt commencer les tests.

Lu nioc bertheloneum,

J'ai ma machine principale PC qui tourne sous Ubuntu depuis quelques mois maintenant, mais bon je suis pas vraiment un tueur...

Tu veux que je la tente où ta ligne de commande ?

Sinon, j'ai aussi un mac mini G4 sous OSX (que je n'ai pas allumé depuis plusieurs mois cependant...) mais bon il fonctionne.

Dis m'en plus.

++

Lien vers le commentaire
Partager sur d'autres sites

Salut,

Merci pour la proposition d'aide

Donc, sur tes deux machines, il faudrait avoir une version de python d'installée. Ensuite il faudrait lancer une fenêtre de python, donc tu peux utiliser idle ou si tu es accoutumé de la ligne de commande, lancer python dans un terminal.

Une fois que tu arrives là, il faudrait que tu lances les commandes suivantes:

import osos.popen('df /monrepertoire/').readlines()[-1].split()[3]

ça devrait te retourner la valeur de l'espace libre dans '/monrepertoire/' (choisi bien entendu un autre répertoire, un qui existe sur ta machine)

Si tu n'as pas envie de choisir, il y a une commande pour utiliser ton répertoire utilisateur par défaut, je sais qu'elle fonctionne sous linux mais je ne sais pas pour mac.

import osos.popen('df "%s"' % os.path.abspath(os.path.expanduser('~'))).readlines()[-1].split()[3]

Si tu n'obtiens pas une valeur numérique en retour, on va simplifier la commande, et tu me renverras le résultat. On extraiera alors la partie intéressante.

Les simplifications sont:

os.popen('df "%s"' %os.path.abspath(os.path.expanduser('~'))).readlines()[-1].split()os.popen('df "%s"' %os.path.abspath(os.path.expanduser('~'))).readlines()[-1]os.popen('df "%s"' %os.path.abspath(os.path.expanduser('~'))).readlines()os.popen('df "%s"' %os.path.abspath(os.path.expanduser('~'))).read()

Si avec la deernière ligne, il n'apparaît nul part la partie d'espace libre, c'est que la commande df n'est pas valide pour récupérer l'espace libre.

Pour Mac, je ne connais absoluement pas les commandes, mais vu que l'OS-X est tiré du monde unix, la même commande que précédemment devrait marcher.

Tiens moi au courant et merci pour ton aide.

S'il y a d'autres personnes intéressées par le projet avec d'autres OS ou avec des OS plus vieux, des distributions différentes, merci de m'indiquer la manière d'obtenir l'espace libre à partir de l'adresse d'un répertoire rentré en paramètre, ainsi que les résultat des commandes suivantes:

import osos.nameimport syssys.platformimport platformplatform.platform()

Par exemple, sous windows XP, si je lance la commande

dir /-C C:\

J'obtiens une chaine de caractère à parser. Je peux donc récupérer sous python l'espace libre (en octet) en utilisant la commande:

os.popen('dir /-C "C:\"').readlines()[-1].split()[2]

os.name va me donner 'nt'

sys.platform : 'win32'

platform.platform(): 'Windows-32bit'

Merci d'avance

++

Lien vers le commentaire
Partager sur d'autres sites

RE,

Je commence par le PC, on verra pour le mac un peu plus tard si ça ne t'ennuie pas (faut que je le rebranche et tout...)

D'abord, pour éviter toute surprise, voici des détails sur la version de Python installée (la dernière officielle dispo pour ma distibution) :

Python 2.4.4c1 (#2, Oct 11 2006, 21:51:02)

[GCC 4.1.2 20060928 (prerelease) (Ubuntu 4.1.1-13ubuntu5)] on linux2

Il faudrait que tu lances les commandes suivantes:

import osos.popen('df /monrepertoire/').readlines()[-1].split()[3]

ça devrait te retourner la valeur de l'espace libre dans '/monrepertoire/' (choisi bien entendu un autre répertoire, un qui existe sur ta machine)

Négatif, rien à faire, cela ne passe pas, voici la réponse que j'obtiens :

>>> import os

>>> os.popen('df /lolo/').readlines()[-1].split()[3]

df: `/lolo/': Aucun fichier ou répertoire de ce type

Traceback (most recent call last):

File "<stdin>", line 1, in ?

IndexError: list index out of range

J'ai essayé de remplacer le nom du répertoire par :

/home/media/sdb1/ mais cela ne veut pas plus.... C'est certainement parce que je suis dans le mauvais répertoire. Mais comme je ne sais pas ou Python est installé (c'est encore une grande interrogation que je n'ai pas réussi à m'expliquer : Ou est-ce que Linux installe ses programmes... rigole pas j'ai toujours pas trouvé l'info! Ou est ce putain d'équivalent de dossier "program files" ? Bref, encore un grand mystère)

Peut être peux tu simplement me dire quelles sont les commandes en python pour lister ce qu'il y a dans le répertoire, le dir sous Ms-Dos et l'équivalent du "cd.."

En revanche, ça passe avec ta solution suivante.

import osos.popen('df "%s"' % os.path.abspath(os.path.expanduser('~'))).readlines()[-1].split()[3]

voici la réponse que j'obtiens :

'42697880'

Sinon, les réponses (je pense que tu les as déjà mais bon)

Import os -> Rien

os.name -> 'posix'

import sys -> Rien

sys.platform ->'linux2'

import platform -> Rien

platform.platform() -> 'Linux-2.6.17-11-generic-i686-with-debian-testing-unstable'

La dernière, elle pue le truc qui change en permanence... Si t'es pas pas trop au fait, Ubuntu existe pour i686 ou pour PowerPC. Le numéro 2.6.17-11 est la révision du noyau (qui aurait changer si j'avais eu la nécessité de le recompiler)

++

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

Salut, merci pour l'info,

donc tu as fait le test sur quelle machine? Ubuntu?

Donc la ligne que j'ai récupéré fonctionne, c'est cool!!!

Par contre, j'aurais besoin des infos donc j'ai demandé aprés (os.name, sys.platform, ...), ça permet de savoir sur quel os je suis et donc utiliser la bonne fonction pour récupérer l'espace libre.

Pour les fonctions :

dir => os.listdir(path)

cd.. => os.path.dirname(path)

Enfin, si tu as le courage de remonter ton mac, ça serait cool, à moins qu'un macuser ne soit dans le coin

++

Lien vers le commentaire
Partager sur d'autres sites

Arf, désolé de la réponse incomplète tout à l'heure...

donc tu as fait le test sur quelle machine? Ubuntu?
Oui
Donc la ligne que j'ai récupéré fonctionne, c'est cool!!!
Oui, la seconde. En ce qui concerne la première, je pense que c'est moi qui ne maitrise pas le chemin relatif ou absolu.
Par contre, j'aurais besoin des infos donc j'ai demandé aprés (os.name, sys.platform, ...), ça permet de savoir sur quel os je suis et donc utiliser la bonne fonction pour récupérer l'espace libre.
J'ai édité le message ci-dessus ;)
Pour les fonctions :

dir => os.listdir(path)

cd.. => os.path.dirname(path)

Merci je vais tenter de jouer avec un poil.
Enfin, si tu as le courage de remonter ton mac, ça serait cool, à moins qu'un macuser ne soit dans le coin

C'est moins une histoire de courage que de savoir se servir de ce foutu OSX. C'est joli, ça décore mais, à mon humble avis, c'est encore pire qu'un Linux dès qu'on se demande comment ça marche...(D'ailleurs pour cela que j'ai abandonné) Je vais regarder si il ya une version de Python qui traine quelque part. Tu l'auras pour cette fin de semaine qui sera trop chargée au boulot :(

EDIT : j'ai envoyé un ti message à Favouille qui m'a dit qu'il essayerai de regarder également (Il m'a l'air de connaître davantage OSX que moi)

++

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

Si vous voulez, je peux faire quelques essais aussi.

import osos.popen('df /home/e-dredon/').readlines()[-1].split()[3]

chez moi le script fonctionne parfaitement et retourne la bonne valeur dans l'interpréteur python.

>>> import os

>>> os.popen('df /home/e-dredon/').readlines()[-1].split()[3]

'130802012'

sous shell, je fais une petite vérification vite fait

/dev/sda2 150221600 11788720 130802008 9% /home

Attention, df (diskfree) n'est pas une commande interne du bash, mais un executable. Il n'est donc pas forcément installé par défaut sur toutes les distribs.

Modifié par e-dredon
Lien vers le commentaire
Partager sur d'autres sites

Salut à tous merci pour l'aide, je prends tout ce que vous pouvez n'offrir, si vous avez plusieurs OS, et que vous trouvez un moyen de récupérer l'espace libre par une ligne de commande, je prends.

Par contre, e-dredon, si df n'est pas une commande par défaut est-ce que tu connais un moyen 'plus classique' pour retrouver l'espace libre?

D'ailleurs quel est l'unité avec df? des bytes? des kilobytes? ...

++

Lien vers le commentaire
Partager sur d'autres sites

Salut à tous merci pour l'aide, je prends tout ce que vous pouvez n'offrir, si vous avez plusieurs OS, et que vous trouvez un moyen de récupérer l'espace libre par une ligne de commande, je prends.

Lu Nioc B et les autres

Pas de changement pour le mac, je ferai ce week end, pas le temps avant... :(

Par contre, e-dredon, si df n'est pas une commande par défaut est-ce que tu connais un moyen 'plus classique' pour retrouver l'espace libre?

Peut être peux tu carémment intégrer l'executable directement dans ton archive. C'est sous licence GPL probablement.... Par contre e-dredon sera (manifestement) plus à l'aise que moi pour le confirmer....

D'ailleurs quel est l'unité avec df? des bytes? des kilobytes? ...
kb

+++

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

Salut,

Pour avoir l'espace disque restant sur un HD, sous Linux tu as la commande "df" pour "disk free":

arkeur@Avalon:~$ df -hFilesystem			Size  Used Avail Use% Mounted on/dev/hda1			  13G  1,3G   11G  11% /varrun				315M  148K  315M   1% /var/runvarlock			   315M	 0  315M   0% /var/lockprocbususb			 10M  116K  9,9M   2% /proc/bus/usbudev				   10M  116K  9,9M   2% /devdevshm				315M	 0  315M   0% /dev/shm/dev/hda2			 4,6G  137M  4,3G   4% /home/dev/sda1			 111G   20G   85G  20% /home/ftparkeur@Avalon:~$

l'option "-h" est pour avoir un listing "h...umain".

Mais tu peux aussi récupérer juste sa taille façon plus geek :)

arkeur@Avalon:~$ du -hs ~ | cut -f18,0Markeur@Avalon:~$ du -hs /home/arkeur/ | cut -f18,0Markeur@Avalon:~$

Pour avoir un peu d'info sur le systeme surlequel tu tournes, tu as la commande "uname"

Voici un peu de commandes ;)

arkeur@Avalon:~$ uname -aLinux Avalon 2.6.17-10-server #2 SMP Tue Dec 5 22:29:32 UTC 2006 i686 GNU/Linuxarkeur@Avalon:~$ uptime 21:13:26 up 53 days,  3:37,  2 users,  load average: 0.02, 0.05, 0.01arkeur@Avalon:~$ whoamiarkeurarkeur@Avalon:~$ pwd/home/arkeurarkeur@Avalon:~$

Merde alors :) Je viens de m'apercevoir que j'ai un uptime de fou sur ce portable lol !

Bonne continuation :)

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

Salut, euh Mb????

donc 42697880 Mb d'espace libre ??? ça fait beaucoup non? (42697880Mb ~42698Gb ~43Tb!!!)

++

Ce sont des bytes.

Harg boulette...! Mais quand même Arkeur, je dirai plutôt des kb.

++

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

Salut à tous merci pour l'aide, je prends tout ce que vous pouvez n'offrir, si vous avez plusieurs OS, et que vous trouvez un moyen de récupérer l'espace libre par une ligne de commande, je prends.

Par contre, e-dredon, si df n'est pas une commande par défaut est-ce que tu connais un moyen 'plus classique' pour retrouver l'espace libre?

D'ailleurs quel est l'unité avec df? des bytes? des kilobytes? ...

++

Je voulais juste dire que DF n'est pas une composante du shell comme LS (l'équivalent de la commande DIR du shell DOS/WINDOWS). C'est un executable séparé que certaines distributions 'tout graphique' n'installent pas forcément. Ton choix reste cependant le plus judicieux à mon avis.

Par défaut, DF donne les mesures d'espaces en kilobyte. Tu peux obtenir des mesures dites "compréhensibles" avec l'argument -h. Bien que la mesure en byte soit la plus simple à traiter je pense.

L'intérêt de DF étant qu'il existe également sous MacOSX (attention il n'est pas présent sous la branche inférieure du système vu que c'est un binaire issu du monde UNIX)

Pour plus de détails, tu trouveras le manpage de la commande ici

http://www.gnu.org/software/coreutils/manu...reutils_84.html

Pour ce qui est de le fournir dans ton package. Rien ne t'en empeche, DF est en GPL. Mais faudrait fournir une version compilée pour chaque plafeforme, tu ne vas pas t'en sortir là. A mon avis il est plus simple de dire que la script nécessite DF et .\

Après tout, tu ne fournis pas une freebox non plus avec le script :)

EDIT :

Pour info, tu as un portage Win32 de DF dans le pack unixutils sur sourceforge

http://unxutils.sourceforge.net/

So useful isn't it ? :)

Modifié par e-dredon
Lien vers le commentaire
Partager sur d'autres sites

Salut,

hmmmm intéréssant :rolleyes: ... est ce possible de faire la meme chose pour le scripte Mytheater (Carte DVB Pc) ?

enregistrer les chaine qui son en stream sur la xbox ?

Merci :sorcerer:

Salut à tous juste pour signaler que les radio freebox sont maintenant dans le multiposte mais elle n'apparaisse pas dans le scrypt F2XTV meme en rebootant la freebox.

Serait-il possible de l'integrer au script.

Merci.

Lien vers le commentaire
Partager sur d'autres sites

salut

Je ne suis pas chez moi là, mais normalement la playliste est récupérée automatiquement... Donc si elle apparait sur ton pc à l'adresse : http://mafreebox.freebox.fr/freeboxtv/playlist.m3u , alors elle doit apparaitre dans le script (sauf erreur avec les numéros à la 10000 et quelque )

Ah si ! il peut y avoir un problème avec l'expression régulière si le format de l'url en rtsp: est défférente de l'url des TV. Un extrait de la playliste radio pour vérifier svp ?

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

Annonces