{{tag>fr fr:archive fr:linux fr:serveur fr:audio fr:web}}
====== Jinzora ======
:!: Article archivé, dernière mise à jour 2007.
Jinzora est un site de gestion de catalogue MP3. Il permet de faire du streaming et de contrôler un serveur [[MPD]].
Une des principales alternatives à Jinzora est Ampache qui s'interface aussi avec MPD.
Remarque : n'utilisant plus Jinzora, cette page n'est plus maintenue.
===== Installation =====
==== Paquets Debian ====
Jinzora est développé en PHP et s'appuie sur Mysql pour stoquer les informations sur les pistes MP3.
Il est donc nécessaire d'installer les paquets suivants :
* apache2
* php4
* mysql-server
* php4-mysql
* php4-gd
Pour plus d'information sur leur installation, voir directement [[Serveur web]] et [[Mysql]].
==== Tuning de PHP ====
Jinzora a besoin de quelques modification de la configuration de php :
///etc/php4/apache2/php.ini//
* max_execution_time = 300 ; Maximum execution time of each script, in seconds
* memory_limit = 32M ; Maximum amount of memory a script may consume (8MB)
* post_max_size = 32M
* upload_max_filesize = 32M
Redémarrez ensuite apache :
> /etc/init.d/apache2 restart
==== Installation des sources ====
Téléchargez l'installation sur le site de jinzora :
* http://www.jinzora.org/pages.php?pn=downloads
Décompressez la dans le répertoire de votre choix, par exemple ///home/jinzora2// :
> cd /home
> tar zxvf /home/matthieu/j2.3.6.tar.gz
> chown www-data -R /home/jinzora2
Le répertoire /home/jinzora2 contient maintenant le site, il faut configurer apache pour pointer dessus.
==== Configurer Apache ====
Pour cela, je vais remplacer le site par défaut par jinzora.
Création du nouveau site dans ///etc/apache2/sites-available/jinora2//
NameVirtualHost *
ServerAdmin webmaster@localhost
DocumentRoot /home/jinzora2
Options FollowSymLinks
AllowOverride None
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/access.log combined
ServerSignature On
Remarque : ce fichier met en oeuvre une configuration basique, si vous souhaitez des informations complémentaires au paramétrage d'apache, voir [[Serveur web]].
Remplacer le site :
> a2dissite default
> a2ensite jinzora2
> /etc/init.d/apache2 reload
==== Modification des sources pour le support UTF-8 ====
Par défaut Jinzora comporte une petite erreur de gestion des tables de charactère : les tags sont lus au format iso-8859-1. Les informations relatives au chemin des pistes sont par contre bien en UTF-8.
Une solution consiste à modifier le codage utilisé par la librairie getid3.
éditez le fichier ///home/jinzora2/services/services/tagdata/getid3/getid3.php// et modifier le paramétrage suivant :
var $encoding = 'UTF-8'; // CASE SENSITIVE! - i.e. (must be supported by iconv())
// Examples: ISO-8859-1 UTF-8 UTF-16 UTF-16BE
Il est important de faire cette modification avant l'importation des fichiers, sinon les données de la base seront erronées.
==== Démarrer la procédure d'installation web ====
Il suffit désormais de lancer http://localhost/ et de suivre les étapes.
Remarque importante : le chemin d'accès aux fichiers audio doit être strictement le même que MPD.
Après l'installation, n'oubliez pas de supprimer le répertoire d'installation :
> rm -Rf /home/jinzora2/install
Autre remarque importante : il faut être logué pour pouvoir utiliser MPD.
==== Tuning de Jinzora ====
=== Activer MPD par défaut ===
Preference > System tools > Settings Manager > Main settings > Jukebox > default_jukebox = MPD Player
=== Gestion de l'UTF-8 ===
Normalement tout doit s'afficher correctement si vous avez modifié les sources avant l'installation.
Par contre, les fichiers avec accent ne sont pas correctement ajoutés à MPD.
Visiblement, MPD ne supporte pas UTF-8 (même avec l'option dans mpd.conf), il faut donc décoder le nom du fichier avant de le transmettre.
Pour cela il faut éditer le fichier ///home/jinzora2/jukebox/jukeboxes/mpd.php// :
/* PLAdd()
*
* Adds the file to the end of the playlist. must be a track in the MPD database.
*/
function PLAdd($fileName) {
if ( $this->debugging ) echo "mpd->PLAdd()\n";
if ( ! is_null($resp = $this->SendCommand(MPD_CMD_PLADD,utf8_decode($fileName)))) $this->RefreshInfo();
# if ( ! is_null($resp = $this->SendCommand(MPD_CMD_PLADD,$fileName))) $this->RefreshInfo();
if ( $this->debugging ) echo "mpd->PLAdd() / return\n";
return $resp;
}
Théoriquement il faut aussi modifier "PLAddBulk" mais comme je n'ai pas de problèmes, je ne l'ai pas fait.
Enfin, pour faire propre, il faut modifier le charset des pages : ///home/jinzora2/frontend/display.php//
# echo ''. "\n";
echo ''. "\n";
et
# return ''. "\n".
# ''. "\n".
# $site_title. " - ". str_replace("","",str_replace("","",str_replace(" "," ",$title))). "". "\n".
# ''. "\n";
return ''. "\n".
/ $site_title. " - ". str_replace("","",str_replace("","",str_replace(" "," ",$title))). "". "\n".
''. "\n";
===== Links =====
* http://www.jinzora.org/