Ce post est donc un mix du How-To de raoulchatigre situé ici, et de mes propres "interpétations" de l'installation du freeplayer.
Nous allons vous présenter différentes manières d'installer le freeplayer en fonction de différentes configurations. Nous ne reculons devant rien pour votre bonheur.
Ce post sera composé de trois grandes parties, la première provenant essentiellement de lancien post de raoulchatigre avec une installation à la mano et le support de X, la seconde concernera une installation avec les ebuild Gentoo de VLC sans support de X et enfin la troisième présentera différentes options sympathiques qui peuvent être utilisées en plus.
Nous vous conseillons de lire ce How-To jusqu'au bout avant de vous lancer dans l'installation afin de pouvoir choisir quelle partie correspond le mieux à vos attentes / contraintes / envies.
- 1. Introduction
- 2. Activation du freeplayer
- 3. Installation AVEC le support de X
- 3.1. Installation des bibliothèques nécessaires
- 3.1.a. Méthode la plus sûre : installer les bibliothèques par portage
- 3.1.b. Installer les bibliothèques à la main
- 3.1.c. Vous avez des problèmes de bibliothèques ?
- 3.2 Installation de VLC-freeplayer fourni par free
- 3.1. Installation des bibliothèques nécessaires
- 4. Installation de VLC sans X avec les ebuilds Gentoo
- 4.1. Installation de VLC
- 4.2. Module de communication Freebox-Freeplayer
- 4.3. Modifications du script de lancement
- 4.4. Les playlists
- 5. Kado Bonux: Le Freeplayer et le script d'init
- 6. Les mods
- 7. Divers, remerciement, poignées de mains
- 8. TODO
1. Introduction
Le Freeplayer est une option de la freebox qui permet de diffuser sur la télévision un flux émit par le logiciel VLC
Le protocole utilisé pour piloter vlc est HTTP, et le port d'écoute de vlc sur la machine qui l'héberge est le 8080.
Ensuite la diffusion du flux se fait sur la freebox dont l'adresse sur le réseau est 212.27.38.253 sur le port 1234.
Attention par défaut, le serveur apache utilise souvent le port 8080, modifiez ce paramètre ou désactivez apache pou libérer le port.
Info : VLC et l'utilisation du freeplayer sont en danger http://www.videolan.org/eucd.html
2. Activation du freeplayer
Vous devez tout d'abord activer le freeplayer, suivez donc les instructions de cette page, et récupérez la dernière version du freeplayer pour linux.
Activation et récupération du freeplayer :http://adsl.free.fr/tv/freeplayer/
Si votre freebox est en mode routeur, vous devrez configurer l'adresse de la machine où vous installerez le freeplayer sur la page des options NAT.
Si vous appuyez longuement sur le bouton Maison de la télécommande freebox, la liste des univers s'affichent et l'entrée freeplayer doit apparaitre, c'est par là que vous pourrez le lancer une fois l'installation terminée.
Sauvegardons l'archive freeplayer-linux-20050905.tgz dans '/home/user' par exemple.
3. Installation avec le support de X
3.1. Installation des bibliothèques nécessaires
L'installation sous gentoo de vlc cause parfois pas mal de souci, le but de ce howto est de permettre un installation la plus complète possible.
Trois voies peuvent être suivies :
Installer les bibliothèques par portage et le vlc de freeplayer (C'est la plus sûre)
Installer les bibliothèques la main et le vlc de freeplayer (Plus fastidieux)
Installer les bibliothèques par portage et le vlc de portage (Cette solution sera développée dans la partie sans X)
Pour ma part j'ai cumulé les problèmes et donc les solutions, peut-être l'utilisation simultanée des deux premières solutions peut apporter meilleure satisfaction mais normalement, une seule suffit.
Masquwell, ça n'est pas la peine d'en mettre dans le thé !
Afin d'installer correctement les bibliothèques pour vlc-freeplayer, 3 possibilités s'offrent à vous.
3.1.a. La plus sûre : installer les librairies par portage
Voici la liste des librairies nécessaires :
Donc en root :Si vous désirez l'interface de VLC : x11-libs/wxGTK
media-video/ffmpeg
media-libs/libmpeg2
media-libs/libdvbpsi
media-libs/libmad
media-libs/freetype
Code: Select all
emerge -avD wxgtk ffmpeg libmpeg2 libdvbpsi libmad freetype3.1.b. Installer les bibliothèques à la main
La procédure est décrite dans un autre how-to : http://cedric.vincent.perso.free.fr/freeplayer.php, donc j'ai pas fait l'effort de vous la recopier
3.1.c. Vous avez des problèmes de bibliothèques ?
Problèmes concernant HAL :
essayez de compiler vlc en désactivant le support hal de vlc.
Code: Select all
./configure --disable-halAlors là c'est plus drôle, essayez tout d'abord de re-emerger la libmatroska, et si besoin d'emerger la version ~x86.
Cela a fonctionné pour moi.
3.2 Installation de VLC - freeplayer
Vous avez récupéré l'archive sur le site de free ? Supposons qu'elle se trouve dans /home/user
Code: Select all
mkdir /root/freeplayer
tar xvzf /home/user/freeplayer-linux-20050905.tgz -C /root/
cd /root/freeplayer
./install.sh
Maintenant compilons le vlc modifié fourni par free...
Code: Select all
cd /usr/local/freeplayer/share
tar xvzf vlc-0.8.4-fbx-2.tar.gz
cd vlc-0.8.4-fbx-2
./configure && make
cela peut parfois débloquer la situation.
Une fois la compilation terminée, exécutez les commandes suivantes
Code: Select all
make install
ldconfig
celui fourni par défaut ressemble à cela :
modifiez le chemin de vlc comme suit et désactivez wx-systray qui semble causer des problèmes#!/bin/sh
exec vlc --extraintf=http --http-host=:8080 --http-charset=ISO-8859-1 --sout="#std" --sout-standard-access=udp --sout-standard-mux=ts --sout-standard-url=212.27.38.253:1234 --sout-ts-pid-video=68 --sout-ts-pid-audio=69 --sout-ts-pid-spu=70 --sout-ts-pcr=80 --sout-ts-dts-delay=400 --no-playlist-autostart --subsdec-encoding=ISO-8859-1 --sout-transcode-maxwidth=720 --sout-transcode-maxheight=576 --play-and-stop --http-src="%HTTP_PATH%" --wx-systray --config="~/.vlc/vlcrc-fbx" --open="$1"
voilà qui sera plus clair :
sinon le vlc lancé ne sera sans doute pas le bon (même si vous croyez l'avoir désinstallé, selon DuF : http://forums.gentoo.org/viewtopic-p-29 ... ml#2946922)#!/bin/sh
cd /usr/local/freeplayer/share/vlc-0.8.4-fbx-2
exec ./vlc \
--extraintf=http \
--http-host=:8080 \
--http-charset=ISO-8859-1 \
--sout="#std" \
--sout-standard-access=udp \
--sout-standard-mux=ts \
--sout-standard-url=212.27.38.253:1234 \
--sout-ts-pid-video=68 \
--sout-ts-pid-audio=69 \
--sout-ts-pid-spu=70 \
--sout-ts-pcr=80 \
--sout-ts-dts-delay=400 \
--no-playlist-autostart \
--subsdec-encoding=ISO-8859-1 \
--sout-transcode-maxwidth=720 \
--sout-transcode-maxheight=576 \
--play-and-stop \
--http-src="/usr/local/freeplayer//share/http-fbx/" \
#--wx-systray \
--config="~/.vlc/vlcrc-fbx" \
--open="$1"
Voilà, si tout s'est bien passé, il ne devrait pas y avoir de problèmes,...
normalement !
4. Installation de VLC sans X avec les ebuilds Gentoo
4.1. Installation de VLC
Nous avons besoin de VLC version 0.8.4 minimum pour avoir accès à tout ce dont on a besoin.
Donc, il nous faut d'abord démasquer VLC et ses dépendances masquées:
Code: Select all
mangouste ~ # echo "media-video/vlc ~x86" >> /etc/portage/package.keywords
mangouste ~ # echo "dev-libs/libebml ~x86" >> /etc/portage/package.keywordsextrait de mon /etc/make.conf:
Code: Select all
USE="a52 aac acpi apache2 bash-completion cdda dts dvd ffmpeg flac freetype gnutls hal httpd java matroska mmx mod mysql mysqli network nptl nptlonly ppds quicktime real sdl sse stream symlink theora threads userlocales utf8 v4l vcd vlm win32codecs xvid -xmms -X -xv -opengl -ldap -gtk -kde -arts -gnome -qt"Une fois ces petites modifications effectuées, il ne reste plus qu'à lancer l'installation de VLC:
Code: Select all
mangouste ~ # emerge vlc4.2. Module de communication Freebox-Freeplayer
Il faut d'abord télécharger le FreePlayer chez Free et l'installer.
Code: Select all
mangouste ~ # wget ftp://ftp.free.fr/pub/freeplayer/freeplayer-linux-20050905.tgz
mangouste ~ # tar xvzf freeplayer-linux-20050905.tgz
mangouste ~ # cd freeplayer
mangouste ~ # ./install.sh4.3. Modifications du script de lancement
Nous allons maintenant modifier le script pour coller à notre install un peu bizarre et pas prévue par Free (Mais à quoi ils pensent chez Free hein, tout le monde n'utilise pas X scrogneugneu)
Comme nous sommes prudents et que nous aimons avoir une version ancienne non modifiée des scripts comme backup, on va le copier sous un autre nom un peu plus compréhensible en plus
Code: Select all
mangouste ~ # cd /usr/local/freeplayer/bin
mangouste bin # cp vlc-fbx.sh freeplayer.shCode: Select all
mangouste bin # vi freeplayer.shCeci permet en plus d'avoir VLC en daemon, ce qui évite de le lancer à chaque fois. Et vu que la machine est constamment allumée, c'est mieux.
Donc, voici à quoi ressemble notre nouveau script:
Code: Select all
#!/bin/sh
exec vlc \
--daemon \
--extraintf=http \
--http-host=:8080 \
--http-charset=ISO-8859-1 \
--sout="#std" \
--sout-standard-access=udp \
--sout-standard-mux=ts \
--sout-standard-url=212.27.38.253:1234 \
--sout-ts-pid-video=68 \
--sout-ts-pid-audio=69 \
--sout-ts-pid-spu=70 \
--sout-ts-pcr=80 \
--sout-ts-dts-delay=400 \
--no-playlist-autostart \
--subsdec-encoding=ISO-8859-1 \
--sout-transcode-maxwidth=720 \
--sout-transcode-maxheight=576 \
--play-and-stop \
--http-src="/usr/local/freeplayer//share/http-fbx/" \
--config="~/.vlc/vlcrc-fbx" \
--open="$1"Code: Select all
mangouste ~ # /usr/local/freeplayer/bin/freeplayer.shLe disque sur lequel sont mes fichiers multimedia étant partagé via NFS pour mes autres machines, j'ai créé un répertoire playlist dans lequel se trouvent les playlists pour le FreePlayer.
Sur chaque machine qui a accès au partage, j'ai copié fbx-playlist et fbx-playlist.pl dans /usr/local/bin. Ainsi, quelle que soit la machine utilisée, on peut facilement créer les playlists autant en graphique qu'en ligne de commande.
5. Kado Bonux: Le Freeplayer et le script d'init
Maintenant, on va se débrouiller pour que le freeplayer soit lancé au démarrage de la machine, en cas de plantage c'est mieux. Et je suis un feignant congénital.
Attention, cette manip n'est garantie que dans le cas où VLC est compilé sans le support de X
Tout d'abord, afin de faire les choses propres, nous allons créer un utilisateur vlc qui aura comme home directory le répertoire où se trouvent les fichiers "streamables". Ici, le répertoire /mnt/stock/media
Code: Select all
mangouste ~ # useradd -G users -s /bin/false -d /mnt/stock/media vlc
mangouste ~ # rm -f /mnt/stock/media/.bash*Code: Select all
#!/sbin/runscript
depend() {
need net
}
start() {
ebegin "Démarrage du Freeplayer"
start-stop-daemon --start --chuid vlc:users \
--background \
--pidfile /var/run/freeplayer.pid --make-pidfile \
--exec /usr/local/freeplayer/bin/freeplayer.sh
eend $?
}
stop() {
ebegin "Arrêt du Freeplayer"
start-stop-daemon --stop \
--pidfile /var/run/freeplayer.pid --name vlc \
eend $?
}Code: Select all
mangouste ~ # chmod +x /etc/init.d/freeplayerIl ne reste plus qu'à lancer le freeplayer et à le rajouter à notre runlevel default:
Code: Select all
mangouste ~ # /etc/init.d/freeplayer start
mangouste ~ # rc-update add freeplayer defaultraoulchatigre me sussure que son script d'init est le même que le mien, à la différence que l'option --daemon est activée dans le script du freeplayer. Cette solution fait que le pid du freeplayer diffère après le lancement. Erf... Ce qui empêche de fait le script d'init de s'arrêter correctement. Je fus confronté aussi au problème, d'où ma suppression de cette option pur faire fonctionner le bouzin.
Donc, appel à contribution, si qqun arrive à faire un script d'init qui permette de garder l'option --daemon, nous sommes preneurs
6.Les Mods
Je viens de tester HomePlayer et ma foi, ça fonctionne plutôt bien. En particulier, ça résoud les problèmes de charset à la con (Ah, UTF-8, quand tu nous tiens).
J'ai vu passer un ebuild pour la version précédente, faudra que j'y jette un oeil pour voir si il correspond à nos attentes particulières, surtout au niveau du couple utilisateur / groupe et de l'emplacement d'installation. Pour info rapide, il demande java comme dépendence. Ça fonctionne avec le JRE de Sun, je ne sais pas si ça marche avec le BlackDown. Si qqun à des retours, ça m'interesse.
Visiblement, il y a une option pour pouvoir le lancer sans interface graphique. Voilà qui est interessant pour nos systèmes et pour en faire un service
J'ai cependant encore quelques problèmes bizarre avec, avec le son qui disparaît subitement pour ne plus revenir sans relancer le bouzin. J'ai posté un message sur le forum qui va bien, en espérant avoir des retours et des réponses.
Une très bonne nouvelle
7. Divers, remerciement, poignées de mains
Un autre paquet nommé svl semble lui aussi faire partie de la bande. Peut-être apporte-il quelque chose, à suivre...
D'autres paquets nommés vlc-svn et vls-svn sont disponibles sur ce site : http://gentoo.zugaina.org/media-video.html.fr#vlc-svn
Sources
Un autre howto intéressant http://cedric.vincent.perso.free.fr/freeplayer.php
[freeplayer] comment ça marche http://forums.gentoo.org/viewtopic-t-355561.html
Info : VLC et l'utilisation du freeplayer sont en danger http://www.videolan.org/eucd.html
8. TODO
- 1 Scripts pour NetFilter afin d'autoriser le Freeplayer. N'utilisant pas NetFilter, nous ne pouvons fournir ce script. Avis aux bonnes âmes: envoyez vos conf iptables les gens
[edit] Pour l'instant, vous pouvez vous réferrer au post de creuvard plus bas. En attendant d'autres retours pour d'autres configurations.
2 Si j'ai le temps et le courage, faire un ebuild. [edit] Ebuild en cours d'écriture par bi3l. Adresse de l'ebuild.
3 Ce qui serait bien, c'est de en plus, chrooter le process dans le répertoire des médias. Comment ça je suis parano ?
[EDIT] Ajout du script de démarrage pour le freeplayer
[EDIT] Mise à jour du tuto. Merging avec celui de raoulchatigre
[EDIT] Ajout du sommaire. Ajout pour le script d'init de raoulchatigre et les problèmes afférents. Waiting for iptables
[EDIT] Correction mineure sur une coquille
[EDIT] Corrections orthographiques et typo.
[EDIT] Rajout du chmod +x
[EDIT] Rajout de l'adresse de l'ebuild dans le bugzilla
[EDIT] Rajout de la section les mods avec le premier test de HomePlayer
[EDIT] Rajout de l'adresse du script pour Amarok





