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 :

La page d'accueil

La page "parcourir"

La page de recherche

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.

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 {} \;

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/

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.

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)

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.

J'écris cette partie transcodage à titre informatif et de façon purement théorique, n'ayant moi-même pas réussi à le mettre en place et ayant opté pour la conversion de tous mes fichiers

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"

Contributeurs : gurdil63

  • ampache.txt
  • Dernière modification: Le 11/09/2022, 12:10
  • par moths-art