Table des matières

GuimPlayer

GuimPlayer est un freeplayer dédié pour l'instant à la lecture de fichiers multimédia (vidéo, musique, photos). L'objectif est d'avoir facilement accès à ses fichiers sans fioritures.

L'une des particularités de ce freeplayer est qu'il repose sur Apache et PHP. Il s'adresse tout particulièrement aux serveurs domestiques sous GNU/Linux.

Principe de fonctionnement

Apache sert les pages PHP sur le port 8080 à la freebox et VLC fournit le flux audio/vidéo sur le port 8081. L'interface web permet d'abstraire l'utilisateur la gestion de la playlist de VLC. L'utilisateur navigue avec sa télécommande puis Apache envoi des requêtes à VLC pour gérer le flux audio/vidéo.

Freebox <--- http ---> Apache <--- http ---> VLC
   ^                                          |
   |----- flux audio vidéo -------------------|

La freebox ne commande pas directement VLC, c'est Apache qui envoi les requêtes à VLC. La freebox se contente d'interagir avec les pages web.

Installation

Le programme se compose d'un script de lancement pour VLC et d'un répertoire contenant les fichiers PHP. On installera toute l'application dans /var/www/freebox/guimplayer.

Apache

Il faut créer un hôte virtuel répondant le sur port 8080 :

# /etc/apache2/sites-enabled/freeplayer
NameVirtualHost 192.168.0.1:8080
Listen 8080
<VirtualHost 192.168.0.1:8080>
        DocumentRoot /var/www/freebox/guimplayer/www/
        # au cas ou apache rale, vous pouvez indiquer un ServerName
        ServerName freeplayer
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/www/freebox/guimplayer/www/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

</VirtualHost>

Ensuite il faut récupérer le svn, créer les répertoires et donner les droits :

sudo mkdir /var/www/freebox
cd /var/www/freebox
sudo svn co svn://www.guim.info/mathieu/public/guimplayer/trunk guimplayer
sudo chgrp www-data guimplayer/run
sudo chmod 775 guimplayer/run
sudo chmod 755 guimplayer/vlc-fbx.sh
sudo touch /var/www/.vlc
sudo chown www-data.www-data /var/www/.vlc

Remarques :

Mise à jour

Si l'installation a été faite par svn, il suffit de mettre à jour à partir du dépôt :

cd /var/www/freebox/guimplayer
sudo svn up

Ensuite il faut penser à revoir la configuration car le fichier config.php a peut-être été mis-à-jour.

Configuration

Freebox

Dans l'interface de gestion, il faut indiquer l'adresse IP de l'ordinateur contenant le freeplayer.

GuimPlayer

L'interface d'accueil propose 3 types de médias : vidéo, musique, photos. La navigation diffère légèrement en fonction du type de médias.

Le programme suppose que chaque type de médias se trouve dans un répertoire différents sur le disque, par exemple : les vidéos dans /home/pub/video, la musique dans /home/pub/musique et les photos dans /home/pub/photos.

Il faut donc configurer l'emplacement des fichiers médias dans le fichier guimplayer/www/config.php, il faut respecter la syntaxe PHP :

$VLCSCRIPT='/var/www/freebox/guimplayer/vlc-fbx.sh';
 
$MEDIAS = array(
        new Media('Video', '/home/pub/video', 'mpg ts mp2 mpeg vob avi mkv mp4 mov aif aiff mjpeg wmv asf ogm divx', 'images/kmplayer.png'),
        new Media('Musique', '/home/pub/musique', 'mp3 ogg wav wma au aac', 'images/multimedia.png', true),
        new Media('Photo', '/home/pub/photo', 'jpg jpeg ljpg png pgm pgmyuv pbm pam tga bmp pnm xpm xcf pcx gif tif tiff lbm', 'images/camera_unmount.png', true)
);

Ce qui importe :

Aide

Il y a 3 modes de fonctionnement : parcours des fichiers, playlist, lecture. Au lancement (accès par les univers de la freebox), on a le choix du type de médias à parcourir, il est également possible de démarrer ou éteindre VLC sur le serveur.

Les boutons colorés de la télécommande permettent de passer d'un mode à l'autre :

Photos

Le menu principal

Parcours des fichiers musicaux

Ajout d'un répertoire à l aplaylist

Affichage de la playlist

 Lecture d'un fichier

Documentations Freeplayer

Voici quelques liens vers des documents utiles pour développer un freeplayer :

Pour aller plus loin :