Ceci est une ancienne révision du document !
Subsonic
Subsonic est un serveur de contenu audio et vidéo en streaming avec une interface web (via http ou https) et une gestion de plusieurs utilisateurs, ainsi que l'authentification LDAP.
La musique est encodée à la volée, par défaut grâce à ffmpeg et lame en MP3 pour l'audio et FLV pour la vidéo. Ces paramètres se changent très aisément. Un grand nombre de format est reconnu par défaut, ainsi que les tags correspondant avec la possibilité d'édition, notamment pour les formats MP3, AAC, OGG, FLAC, WMA et APE.
Subsonic est traduit dans de nombreuses langues, dont le français, avec 24 thèmes par défaut. Il offre la possibilité de lire la musique dans le lecteur web, comme dans un lecteur externe (avec gestion des playlists), de contrôler la musique à distance grâce à votre téléphone, ainsi que de télécharger la musique, piste par piste, comme un album entier.
Des applications existent pour Android, iPhone/iPad, Windows Phone 7/8, Windows, Mac, Linux et BlackBerry PlayBook. Il y a une gestion de la bande passante en limitant le bitrate, la musique sera automatiquement réencodée avec le bon débit binaire.
Subsonic fonctionne sur la plupart des plateformes grâce à la technologie Java, notamment sur Windows, Mac, Linux et autres variantes Unix. Subsonic est un logiciel open-source sous licence GPL.
Pré-requis
- Disposer des droits d'administration.
- Disposer d'une connexion à Internet configurée et activée.
- Java 1.6 ou ultérieur, il suffit d'installer les paquets openjdk-6-jre.
- Lame : Il suffit d'installer le paquet lame
Installation
Cette installation fonctionne pour Debian et Ubuntu.
Comment installer Subsonic sous Ubuntu
Si vous souhaitez essayer Subsonic avant de l'installer vous pouvez vous rendre ici.
Nous téléchargeons ensuite la dernière version de Subsonic:
En GUI: http://sourceforge.net/projects/subsonic/files/subsonic/5.2.1/subsonic-5.2.1.deb/download
Double-cliquer ensuite sur le fichier, l'installation se lancera.
Pour l'installer nous ferrons:
sudo dpkg -i subsonic-5.2.1.deb
Le Daemon ne se lance pas automatiquement après l'installation, pour lancer Subsonic nous allons faire:
sudo service subsonic start
Félicitation!, vous venez d'installer votre propre serveur de streaming audio/vidéo, le port d'écoute qu'utilise Subsonic par défaut et le port 4040, ouvrez donc votre navigateur internet puis saisissez dans la barre d'adresse ceci:
http://localhost:4040
Vous obtiendrez quelque chose semblable à ceci, je dis semblable car vous aurez pas ce thème par défaut à votre premier lancement de Subsonic :
Configurer Subsonic sous Ubuntu
Si vous désirez changer le port de Subsonic, allouer plus de mémoires vives à Java ou bien sais-je .. vous devez éditer le fichier suivant:
/etc/default/subsonic
Voici à quoi ressemble ce fichier de configuration:
Étudions maintenant à quoi servent les variables de ce fichier :
La variable SUBSONIC_ARGS permet de définir le port d'écoute de Subsonic, la mémoire allouée à Java, de définir le port https si vous désirez utiliser le SSL pour cette application.
La variable SUBSONIC_USER permet de définir sous quel utilisateur tournera le Daemon Subsonic, par défaut Subsonic utilise root !.
Les logs de Subsonic se trouvent dans:
/var/subsonic/
Voici à quoi ressemble le subsonic.log :
Utilisation
Subsonic est désormais disponible à l'adresse http://localhost:4040. Changer la langue en se rendant dans Settings>Personal, puis suivre les instructions de la page d'accueil.
Une fois le ou les dossiers contenant les médias choisi, le service est fonctionnel. L'utilisation et la configuration sont très intuitives et ne présentent aucune difficulté particulière.
Il existe différentes applications disponible sur le site officiel. Pour contrôler la musique à distance grâce à un téléphone, se rendre sur cette page : http://votre_ip_ou_votre_nom_de_domaine:4040/wap.
Utiliser un certificat signé par une autorité de certification avec Subsonic
Ici nous allons voir comment utiliser un certificat acheté chez Namecheap, vous pouvez obtenir chez eux un certificat Comodo pour $7.95/yr.
Ici nous verrons pas comment générer un CSR etc, je pars du principe que vous avez votre .zip avec ces 3 fichiers:
- AddTrustExternalCARoot.crt.
- PositiveSSLCA2.crt.
- trucmuche.crt.
et bien sûr votre clé privé.
Nous devons absolument stopper notre daemon Subsonic auparavant:
service subsonic stop
Bon trêve de blabla on passe à la pratique, voici les commandes que vous devez effectuer pour utiliser votre certificat signé par l'autorité Comodo .
Ici nous allons combiner 3 fichiers, votre clé privé, le certificat du serveur, et le certificat intermédiaire pour se faire nous allons faire:
cat myserver.key trucmuche.crt AddTrustExternalCARoot.crt > subsonic.crt
Ensuite nous devons convertir notre certificat subsonic.crt à la norme PKCS12, c'est ce qu'utilise notre Tomcat ne l'oublions pas .
openssl pkcs12 -in subsonic.crt -export -out subsonic.pkcs12
Ensuite nous devons créer notre Java keystore pour se faire nous allons faire ceci:
keytool -importkeystore -srckeystore subsonic.pkcs12 -destkeystore subsonic.keystore -srcstoretype PKCS12 -srcalias 1 -destalias tomcat
Ensuite nous importons notre subsonic.keystore dans le subsonic-booter-jar-with-dependencies.jar.
zip /usr/share/subsonic/subsonic-booter-jar-with-dependencies.jar subsonic.keystore
Et voilà, ensuite vous devez configurer votre /etc/default/subsonic pour qu'il utilise https :
nano /etc/default/subsonic
Chercher la ligne suivante:
Modifier le –port=blah et le –https-port=blah, vous pouvez mettre –port=0 pour désactiver le http et –https-port=4242 pour activer le SSL sur le port 4242, mais attention!, vous devez absolument choisir un port > à 1024 si votre daemon ne tourne pas en root, ce qui est préférable d'ailleurs .
Ensuite nous relançons notre daemon subsonic via la commande suivante:
service subsonic start
Et zou magie vous aurez plus aucune erreur de certificat sur votre navigateur web, comme vous pouvez voir ci dessous:
Désinstallation
Pour supprimer cette application, il suffit de supprimer son paquet. Selon la méthode choisie, la configuration globale de l'application est conservée ou supprimée. Les journaux du système, et les fichiers de préférence des utilisateurs dans leurs dossiers personnels sont toujours conservés.
Fork de Subsonic : Supersonic & Madsonic
Il est à noter que Subsonic étant davantage reconnu comme un logiciel Open Source qu'un Logiciel Libre, un fork s'est mis en place sous le nom de Supersonic ici : https://github.com/Mach5/supersonic ; le forum de discussion à ce propos commence par là : http://forum.subsonic.org/forum/viewtopic.php?f=3&t=3521 Ce projet ne semble cependant plus soutenu. Un autre fork nommé Madsonic est toujours actif ici http://www.madsonic.org/
Voir aussi
- Jinzora, un autre serveur de streaming.
- iceCast, un autre serveur de streaming.
- Gnump3d, un serveur de streaming plus simple, mais avec moins de fonctionnalités.
Contributeurs principaux : clement.analogue, beaver(Refonte de la documentation)