29 mai 2006

Configurer un serveur de streaming audio

Trustome a ajouté un tutorial pour faire un serveur streaming sous linux

Le but de ce tutoriel est de vous guider dans la mise en place d'un serveur de streaming audio. Ainsi vous pourrez diffuser exactement ce que vous entendez dans vos enceintes. Attention, tout ce que vous entendez sera envoyé (vos discussions Skype, le son des films que vous regardez...) !!!

1. Alternatives à la solution proposée

La solution proposée ci-dessous vous permet d'envoyer tout ce que vous entendez à vos clients. Si vous ne voulez envoyer que certaines musiques ou autres, envisagez d'utiliser Kaffeine ou VLC par exemple qui proposent une option de diffusion.

2. Configuration du serveur

Utilisateurs peu expérimentés

Afin de faciliter au maximum la tâche pour les utilisateurs peu expérimentés, j'ai conçu un script pour amaroK que vous pouvez trouver ici. Une fois installé et configuré correctement, il vous suffira de lancer amaroK pour commencer à diffuser (attention : TOUT ce que vous écoutez sera envoyé, pas seulement la musique écoutée dans amaroK) et le titre de la chanson en cours de lecture dans amaroK sera envoyé aux clients qui vous écoutent.

Ce script nécessite perl, le module perl-URI, iconv, wget, Icecast2 et Darkice. Vous pouvez les installer avec les utilitaires de votre distribution (urpmi, yum, apt-get...) ou à partir des sources (cf http://www.icecast.org/ et http://darkice.sourceforge.net/). Veillez à ce que Icecast ne soit pas lancé en tant que service au démarrage.

Une fois ces dépendances installées, le script doit pouvoir être exécuté sans problème. Le mot de passe root vous sera demandé car l'utilitaire Darkice a besoin d'être exécuté en tant que root. Si vous ne rencontrez pas d'erreur et si votre configuration est "standard" (vous utilisez alsa et vous écoutez sur la première carte son), vous pouvez passer à la configuration du client.

Utilisateurs un peu plus expérimentés ou n'utilisant pas amaroK

Si vous n'utilisez pas amaroK, la solution proposée ci-dessous ne vous permettra pas d'envoyer le titre de la chanson que vous écoutez à vos clients (à supposer que vous souhaitiez diffuser une chanson).

Téléchargez ceci et décompressez les fichiers icecast.xml et darkice.cfg. Ce sera les deux seuls dont nous aurons besoin. On supposera dans la suite qu'ils se trouvent dans /home/user/icecast.

Installez Icecast2 et Darkice. Vous pouvez les installer avec les utilitaires de votre distribution (urpmi, yum, apt-get...) ou à partir des sources (cf http://www.icecast.org/ et http://darkice.sourceforge.net/). Veillez à ce que Icecast ne soit pas lancé en tant que service au démarrage.

Maintenant dans une console, exécutez les commandes suivantes :

$ icecast -b -c /home/user/icecast/icecast.xml
$ su
# darkice -c /home/user/icecast/darkice.cfg

Si vous ne rencontrez pas d'erreur et si votre configuration est "standard" (vous utilisez alsa et vous écoutez sur la première carte son), vous pouvez passer à la configuration du client.

Une fois que vous avez terminé votre session de streaming, faites un Ctrl-C dans la console pour terminer Darkice puis un killall icecast.

Utilisateurs expérimentés / configuration avancée

Si vous avez rencontré des problèmes lors des étapes précédentes ou si vous souhaitez faire une configuration plus avancée du serveur, je vais vous donner quelques indications. Si cela ne suffit pas à votre bonheur, je vous recommande de lire la documentation de Icecast et de Darkice.

  • Vous utilisez OSS : je vous recommande de passer à ALSA qui est devenu le standard dans les distributions actuelles. Si vous ne pouvez ou ne voulez pas, vous devez spécifier dans le fichier darkice.cfg dans la section [Input] le device comme étant /dev/sound/dsp# où # est le numéro de la carte (blanc si 0).
  • Vous utilisez ALSA : si vous utilisez ALSA et que vous avez préféré éditer le fichier darkice.cfg fourni avec Darkice, vous devrez spécifier dans le fichier darkice.cfg dans la section [Input] le device comme étant plughw:0,1 où le premier numéro est le numéro de la carte et le deuxième le numéro du périphérique (d'après la documentation ALSA).
  • Et la sécurité ? par défaut les mots de passe ont été définis à azerty. Si vous les modifiez, pensez à les faire correspondre entre darkice.cfg et icecast.xml.
  • Comment choisir le format de diffusion ? par défaut le format de diffusion a été fixé à Ogg Vorbis en 128kbps VBR. Vous pouvez le modifier en consultant la documentation de Darkice et en modifiant le fichier darkice.cfg en conséquences. Si vous souhaitez uniquement modifier la qualité pour diminuer le débit, vous pouvez changer les entrées bitrate et quality dans le fichier darkice.cfg à la section [icecast2-0].

3. Configuration du client

La configuration du client est très simple. Vous devez tout d'abord obtenir l'adresse IP du serveur. Pour cela utilisez la commande ifconfig en root sur le serveur. Une fois que vous avez l'adresse IP, si vous n'avez pas changé les fichiers de configuration, vous devez ouvrir l'adresse http://ip_du_serveur:8000/music.ogg avec un client compatible.

Par défaut, le serveur diffuse un flux au format Ogg Vorbis. Les clients qui supportent ce format sont nombreux (amaroK, Kaffeine, VLC, winamp, XMMS...).

Merci trustonme

02 mai 2006

webcam Philips PCVC740K ToUcam Pro et debian etch

On dit parfois que linux serait un concurent de windows. Mais quand on l'utilise réellement que penser de cela ?

Il est vrai que ce système est gratuit et très formateur pour les informaticiens. Mais force est de constater qu'un simple utilisateur non informaticien ne peut pas utiliser linux pour ses besoins. Utilisateur de linux depuis quelques années, j'ai cru au discours pocilicien sur l'opensource. C'est une belle idée. Mais l'idéologie ne va pas faire tourner mon ordi.

J'ai commencer sur mandrake puis installé une mepis sur un portable. Finalement suite à un stage de formation qui se basait sur Debian, c'est une Debian qui est installé sur le poste de travail principal.

Le problème de Debian c'est que c'est une distribution ou la philosophie opensource est poussée à l'extrème. Pour n'importe quoi on a des problèmes : sur internet avec le flash ou le java. Avec le MP3. On ne peut pas lire les fichiers wma ou autres formats windows.

Mais c'est surtour pour les périfériques que linux est connue pour être mangeur de temps et de nerf. Installer une imprimante demande efforts, recherches et persévérance. Même les imprimantes compatible ( HP ) ne fonctionnent pas facilement.

Le son est aléatoire. Il marche parfois et parfois pas ou mal !

Dernièrement, je me suis penché sur le problème de la webcam. Elle fonctionnait très bien sur mandriva 2005 et sur mepis. Mais sur debian etch ( futur version stable de debian ) elle est reconnue mais ne marche pas !

Une recherche sur internet me conduit sur pwc. Ce serait la chose manquante mais au lieu de taper des lignes de commandes j'ai préférer installer un paquet pwc-modules-2.6.15-1-686.

Ce paquet est installé sur ma mepis mais pas sur ma etch ! Pourtant c'est la meme famille.

Comme je ne trouve pas ce paquet sur la liste de paquet disponible :

http://www1.apt-get.org/search.php
Je chercher pwc et il me donne
deb http://www.aptech.com.ar/debian ./
J'ajoute ce dépot sur synaptic, un clic sur recharger puis rechercher avec pwc et la je trouve ce paquet que j'installe.

Ca marche pas mais je reboot. ( oui je sais je vais me faire critiquer !! car peut être ce devrait marcher en tapant /etc/init.d/ywsqdf start mais je ne connais pas le ywqdf alors je relance tout.

Ouverture de openwengo , configuration , paramètres video et visualisation webcam : et la surprise : on voit quelque chose :

Mais très vite, le son son qui fonctionnait avec openwengo ne marche plus. C'est l'image ou le son !

Mais je ne suis pas au bout de mes peines : ekiga ne me connait toujours pas la webcam !

Linux, c'est de la recherche continuelle pour que ca marche ! Mais je ne veux pas entendre ou lire que c'est pour le grand public est que cela devrait concurencer windows. On y est encore TRES loin !

Si quelqu'un a une idée pour le son avec openwengo et l'image avec ekiga ?
Avec kopete, j'ai l'image.

Ce que je peux faire c'est utiliser skype pour le son et kopete ( msn ) pour l'image. Oui c'est simple l'opensource !

Conclusion pour écouter ou voir, debian n'est pas une distribution à choisir surtour si vous n'avez pas trop de temps et si vous n'êtes pas informaticien.

01 mai 2006

gosposonic

Gosposonic est une émission téléchargeable gratuitement sur l'échange de programme. Elle dure 30 mn. Une production d'un animateur de radio colombe. Retrouvez le détail sur son blog. Comme d'habitude, une nouvelle émission toute en musique. Une fois encore tous les artistes de Gosposonic sont là à cause de leur foi en Dieu. Chacun a rencontré Jésus-Christ et çà a tout changé... Leur musique est inspirée par leur foi.
Gosposonic.blogspot.com