Ampache
Ampache est une plate forme de streaming audio basée sur une interface web. Elle permet de partager vos musiques ou d'y accéder depuis partout dans le monde.
Ampache permet de diffuser des fichiers OGG, MP3, WAV mais gère aussi les fichiers M4A, AAC et FLAC (par conversion)
L'interface est ergonomique et de nombreux thèmes sont disponibles, dont certains vraiment très sympathiques. De plus, Ampache gère les jaquettes. Cerise sur le gâteau, Ampache est entièrement traduit en français et gère les caractères spéciaux (accents, etc.)
De quoi vous mettre en bouche :
Prérequis
Pour commencer, comme dit ci-dessus, ampache fonctionne avec une interface web. Il faut donc avoir installé lamp et avoir un utilisateur MySQL ayant les droits super utilisateur.
Permissions
Ampache doit avoir la possibilité de lire tous les fichiers du catalogue (nous nommerons catalogue le dossier dans lequel est votre musique) et les droits lecture+exécution sur tous les dossiers. Si jamais vous avez des problèmes avec ampache "impossible de lire un fichier/dossier", vérifiez les permissions.
Voici les commandes à exécuter pour changer les permissions :
cd /dossier/ou/est/rangé/votre/musique sudo find . -type d -exec chmod o+rx {} \; sudo find . -type f -exec chmod o+r {} \;
Installation
Tout d'abord, installez les paquets apt://ampache et apt://ampache-themes.
Le fichier source sera installé ici : /usr/share/ampache/www
Et le fichier de configuration : /etc/ampache/
Configuration
Rendez-vous sur votre navigateur à l'adresse http://localhost/ampache ou http://votre.ip/ampache.
Choisissez comme langue le français.
Vous arrivez alors à la première étape :
- Nom de la base de donnée = ampache (defaut)
- MySQL Hostname = localhost (defaut)
- MySQL Administrative Username= root ou le nom d'utilisateur que vous avez créé avec les droits super utilisateur
- MySQL Administrative Password= votre mot de passe correspondant
- Create Database User For New Database= cochez-le
- Ampache Database Username= ampache (defaut)
- Ampache Database User Password= Mot de passe de votre choix
Continuez :
- Web Path= /ampache
- Desired Database Name= ampache (defaut)
- MySQL Hostname= localhost (default)
- MySQL Username= nom d'utilisateur choisi ci-dessus (ampache)
- MySQL Password= mot de passe choisi ci-dessus
Cliquez sur Écrire la configuration. Il vous sera alors proposé de télécharger un fichier appelé ampache.cfg.php. Téléchargez-le où vous voulez et copiez-le dans /etc/ampache
.
sudo mv la/ou/est/votre/fichier/ampache.cfg.php /etc/ampache
Maintenant cliquez sur vérifier la configuration. Tout devrait être vert.
En cliquant sur continuer, vous arriverez à la troisième étape de l'installation. Entrez votre login/mot de passe. Vous utiliserez le compte administrateur pour votre première connexion à ampache et pourrez éventuellement changer le nom d'utilisateur et mot de passe ensuite.
Cliquez sur continuer, vous arriverez à l'écran de connexion d'Ampache.
Création d'un catalogue
Tout d'abord, connectez-vous, allez dans Admin > Config. Choisissez "français", cochez "apply to all". Cliquez sur update preferences et enfin sur "Rebuild preferences" (en haut).
Les catalogues sont les dossiers contenant votre musique. Il y a deux types possible de catalogues actuellement : les catalogues locaux et les catalogues distants. Les catalogues distants s'utilisent avec XML-RPC et référencent d'autres serveurs Ampache. Les catalogues locaux référencent un dossier sur le serveur (votre ordinateur).
Pour créer votre premier catalogue, connectez-vous en tant qu'administrateur, allez dans le menu administration et cliquez sur Catalogues et ajouter un catalogue.
- Nom de catalogue : Donner un nom
- Chemin: Dossier situé sur l'ordinateur où est ampache (ne pas mettre de chemin relatif)
- Type de catalogue : local ou distant
- Clef de XML-RPC : *Obligatoire pour un catalogue distant
- Motif de nom de fichier : Motifs qu'ampache va utiliser pour essayer de lire les noms de fichier et les tags. Cela définit également la façon dont ampache va ordonner/renommer les fichiers dans la collection
- Motif de dossier : Structure du catalogue, partant du dossier principal, cela permet également de récupérer les tags.
- Récupérer la jaquette d'album : oui, c'est plus joli
- Construire les listes de lecture à partir des fichiers m3u : Ampache va chercher des fichier .m3u dans le catalogue et essayer de créer des listes de lecture à partir de ces fichiers
Vous pourrez par la suite revenir dans administration > catalogues pour demander à Ampache de vérifier le catalogue (regarder s'il y a de nouvelles musiques)
Transcodage
Nous avons parlé des fichiers AAC/M4A/FLAC. Certes Ampache les gère, mais ce ne sont pas des formats propices au streaming, il va donc falloir faire du transcodage. Cela permet de convertir un type de fichier en un autre. Ampache gère le transcodage à la volée de tout type de fichier.
Transcodage standard
modifiez ces lignes
###################################################### # These are commands used to transcode non-streaming # formats to the target file type for streaming. Any # file types defined here will automatically be transcoded # using the stream_cmd_??? regardless of personal preferences # This can be useful in re-encoding file types that don't stream # very well, or if the player doesn't support some file types. # REQUIRED variables # transcode_TYPE = true # transcode_TYPE_target = TARGET_FILE_TYPE # stream_cmd_TYPE = TRANSCODE_COMMAND # List of filetypes to transcode transcode_m4a = true transcode_m4a_target = mp3 transcode_flac = true transcode_flac_target = mp3 #transcode_mpc = false #transcode_mpc_target = mp3 # These are the commands that will be run to transcode the file stream_cmd_flac = flac -dc %FILE% | lame -b 128 -S - - transcode_cmd_m4a = "faad -f 2 -w %FILE% | lame -r -b %SAMPLE% -S - -"
Ceci est la configuration par défaut, vous remarquerez qu'il faut avoir installé flac, lame et faad. Vous pouvez ajouter d'autres types de fichiers selon le même modèle
pour le format ogg (sous linux quand même c'est par default ;) : vorbis tools et lame
transcode_ogg = true transcode_ogg_target = mp3
transcode_cmd_ogg = "oggdec -Q %FILE% -o - | lame -q 2 -b %SAMPLE% -S - -"
Transcodage par internet
Vous pouvez aussi forcer le transcodage basé sur l'adresse IP de l'utilisateur du stream. Cela permet de télécharger et encoder automatiquement si l'utilisateur est en dehors du réseau local. Pour activer cela il faut définir un "Local Network ACL [en]" et activer "downsample_remote" dans ampache.cfg.php
# Downsample Remote # If this is set to true and access control is on any users who are not # coming from a defined 'network' ACL will be automatically downsampled # regardless of their preferences. # DEFAULT: false # downsample_remote = "false"
Liens
- https://github.com/ampache/ampache/wiki/[en], avec toutes les infos utiles
- Jinzora, un autre serveur de streaming
- iceCast2, un autre serveur de streaming,
- Gnump3d, un serveur de streaming plus simple, mais avec moins de fonctionnalités
- Subsonic : un serveur multimédia multiplate-forme basé sur Java.
Contributeurs : gurdil63