MPD + Icecast = webradio « AddiKT1ve | doneed.net



  • RSS LinuxFR

    • Brèves libres
      Je vous propose quelques actualités relevées ces derniers jours. Celles-ci sont rangées par thèmes : Systèmes d'exploitation : ReactOS 0.3.9 et Contiki 2.3 Distributions : Debian 5.0r2, YDL 6.2, PCLOS 2009.2, Slackware 13.0 RC1 Logiciels : KDE 4.3 RC1, KVM 87, VirtualBox 3.0 Technologies : articles OpenGL 3.x, MILEPOST 4.4.0 (...) […]
    • Grand quizz des 11 ans : connaissez-vous bien LinuxFr.org ? (jour 5)
      Le quizz « connaissez-vous bien LinuxFr.org ? » ne s'arrête pas en si bon chemin. Onze ans, cela se fête toute la semaine !. Onze nouvelles questions en ligne et vous avez toujours jusqu'à 23h59 ce soir pour répondre, toujours en minuscules et sans espace ni caractère accentué. Concernant la journée de jeudi, nous avons eu cette fois 39 participan […]
    • Python arrive en version 3.1
      Le langage de programmation Python arrive dans une version 3.1 qui marque la maturation de la branche 3.x. Le passage à Unicode par défaut pour les chaînes de caractères dans Python 3.0 était source de nombreuses régressions au niveaux des performances. Celles-ci ont été gommées par la réécriture en C de la bibliothèques d'entrées/sorties (io) et l […]
    • Interview de Adam Hamsik, développeur NetBSD
      Peu de temps après la sortie officielle de NetBSD 5.0, le Google Summer of Code 2009 a vraiment démarré, les étudiants commençant à écrire du code. Pour la cinquième année consécutive, le projet NetBSD participe à cette opération, qui permet à des étudiants de travailler sur des projets libres durant l'été, en étant rémunérés. Après avoir porté l'a […]
    • Grand quizz des 11 ans : connaissez-vous bien LinuxFr.org ? (jour 4)
      Suite du quizz « connaissez-vous bien LinuxFr.org ? » à l'occasion des 11 ans du site. Les 11 nouvelles questions sont désormais en ligne et vous avez jusqu'à 23h59 ce soir pour répondre en minuscules et sans espace ni caractère accentué. Concernant la journée de mercredi, nous avons eu cette fois 58 participants et parmi ceux-ci 10 ont trouvé tou […]
    • Grand quizz des 11 ans : connaissez-vous bien LinuxFr.org ? (jour 3)
      LinuxFr.org n'en finit pas de fêter ses 11 ans, et 11 nouvelles questions du quizz lancé lancé lundi à cette occasion « connaissez-vous bien LinuxFr.org ? » sont en ligne depuis minuit, jusqu'à 23h59 ce soir. N'oubliez pas que le concours est ouvert à tous et s'étale sur une semaine et que les réponses doivent être en minuscules et sans e […]
    • Firefox "Shiretoko" 3.5 est sorti
      La version 3.5 du célèbre navigateur Internet de la fondation Mozilla, Firefox, est disponible. Cette nouvelle version, qui arrive après plus d'un an de développement, apporte de nombreuses améliorations au niveau des performances ainsi que des nouvelles fonctionnalités. Cette publication, portant le nom de code « Shiretoko », introduit le nouveau mote […]
    • Netbeans 6.7
      NetBeans est un projet qui consiste d'une part en une plate-forme de conception d'applications Java et d'autre part en un environnement de développement intégré - un IDE. NetBeans a été racheté par Sun en 1999 et est développé en Java. Il est distribué sous double-licence CDDL et GPLv2. Il est disponible dans de nombreuses langues - et en pa […]
  • RSS Linux Quimper

    • Lastlundi du lundi 30 juin 2009
      LinuxQuimper organise des rencontres régulières à l’image de permanence. Complémentaires des festives Install party, ces courtes rencontres ont dorénavant lieu tous les derniers lundi du mois, de 18 à 20 h, au bar Le Grenier (11, rue Ste-Catherine, 29000 Quimper‎ - 02 98 65 11 83‎). La première édition de ces rencontres a eu lieu au Bastringue, [...] […]
    • 2e mardi of the month du 14 juillet 2009
      LinuxQuimper vous propose une nouvelle rencontre régulière : le 2e mardi of the month au Wash Café (ex Les Bermudes) au carrefour du 1, rue Gambetta et du 2, rue Jules Ferry (près du rond-point du Moulin Vert et de la place Geneviève-Anthonioz-de-Gaulle), de 20h à 22h. Elle est piloté par phil ici. « Rencontre au Wash. [...] […]
  • MPD + Icecast = webradio

    Vous avez toute votre vie rêvé de diffuser illégalement de la musique soumis aux droits d’auteur ? D’ici une quinzaine de minutes, vous pourrez vous préparer à une visite surprise du GIGN dans votre chambre d’étudiant ;) !

    Bon, si vous êtes geek, vous devriez savoir ce qu’est MPD et je vous invite très fortement à vous y intéresser de plus prêt si, en plus, vous aimez la musique et les playlists. Je ne vais pas faire un cours d’Histoire pour les mauvais élèves, sachez seulement que ce (fantastique) logiciel est un daemon, c’est-à-dire une sorte de « logiciel résident» , une tâche exécutée en arrière-plan, en somme, qui ne dépend pas de votre interface graphique. Vous contrôlez ce daemon grâce à un frontend comme Sonata, ce qui assure une stabilité exceptionnelle (l’interface graphique crashe ? Pas grave, votre musique continue à passer) et une flexibilité hors du commun, comme nous allons le voir au cours de ce tutoriel. Trève de superlatifs, passons à l’action.

    Afin de parvenir à vos fins, il vous faudra avoir installé mpd et Icecast, un serveur de diffusion. Pour schématiser, Icecast récupère le flux audio mpd et le diffuse sur le réseau en streaming.

    Attention : pour que le duo fonctionne, il faut d’abord lancer Icecast, puis mpd sinon ça ne marchera jamais.

    Je vous donne ma config mpd (fichier ~/.mpdconf). J’ai décidé de ne pas l’utiliser comme un deamon, mais de le lancer ponctuellement (au démarrage de ma session, en l’occurrence).

    # Fichiers et dossiers
    
    music_directory "~/Musique"			# Là où se trouve la musique
    playlist_directory "~/.mpd/playlists"		# Où mettre les playlists
    db_file "~/.mpd/mpd.db"				# La base de données
    log_file "~/.mpd/mpd.log"			# fichier de log
    error_file "~/.mpd/mpd-error.log"		# fichier de log des erreurs
    pid_file "~/.mpd/mpd.pid"			# fichier PID
    
    # Connexion (facultatif)
    
    bind_to_address		localhost		# Hostname
    port 6600					# Où MPD doit écouter. Défaut : 6600
    
    # Si vous voulez contrôler l'accès au serveur (facultatif)
    # Si l'option password n'est pas spécifiée, alors les personnes non authentifiées
    # auront le droit de tout faire.
    
    default_permissions "read,add,control,admin"	# Autorisations totales
    
    audio_output {
        type        "shout"
        name        "AddiKT1ve"
        host        "localhost"
        port        "8000"
        mount       "/usr/share/icecast/stream.ogg"
    
    # This is the source password in icecast.xml
        password    "hackme"
    
    # Set either quality or bitrate
        quality     "5.0"
        format      "44100:16:1"
    
    # Optional Paramters
        user        "source"
    } # end of audio_output
    
    # Need this so that mpd still works if icecast is not running
    audio_output {
        type "alsa"
        name "fake out"
        driver "null"
    }
    

    Pour lancer mpd, tapez simplement mpd. Au premier lancement, vous aurez besoin de créer la base de données : mpd --create-db.

    Et hop, mon /etc/icecast.xml – je n’ai pas changé le mot de passe par défaut, parce que moi, je suis un grand malade : icecast.xml.

    Modifier les valeurs que j’y ai insérées – exemple : votre nom d’utilisateur fonctionnera mieux que le mien :D – et lancez le daemon (sous Archlinux, ça donne ça) :

    sudo /etc/rc.d/icecast start

    Par défaut, Icecast écoute sur le port 8000. Pour accéder à la page qu’affiche le logiciel, un petit tour par localhost:8000 et le tour est joué. Remplacez localhost par l’IP locale du PC pour écouter le flux à partir d’une autre machine sur le réseau. Et pour l’écouter depuis l’Internet multimédia interactif 2.0, utilisez le NAT de votre routeur afin d’ouvrir le port… Et voilà ;) !

    Bonne écoute à toutes et à tous, et bon piratage !

    

    14 commentaires sur “MPD + Icecast = webradio”

    1. fraiddo dit :

      Coucou,

      j’ai un problème bizarre: je n’arrive pas à faire fonctionner icecast2 et mpd en même temps :(

      j’utilise gmpc pour gérer mpd, et quand je m’y connecte, mon icecast2 saute..

      icecast est sur 8008 et mdp sur 6600. j’ai bien ouvert dans le firewall, mais rien ne se passe comme prévu, et je suis en localhost.

      voici ma config icecast et mpd: http://pastebin.com/m11e5f1ec

      help please =p

    2. AddiKT1ve dit :

      fraiddo, à mon avis c’est parce que tu n’as pas les droits sur /mpd.ogg ;) .

      Bienvenue sur mon blog, en tout cas !

    3. fraiddo dit :

      Re,

      faut chmoder en 777 alors?

      merci pour l’accueil :p

    4. AddiKT1ve dit :

      Non, c’est impossible ; le fichier est créé ponctuellement, et il faudrait en somme que tu aies les droits (chown) sur / ce qui est insensé !

      Tu devrais donc (comme dans ma config) utiliser un répertoire comme /usr/share/stream/ dans lequel tu places ton mpd.ogg ; un petit chown fraiddo:users /usr/share/stream and then you’re done ;) .

    5. fraiddo dit :

      Ah j’ai une avancée: j’arrive à gérer ma playlist via gmpc et voir icecast dans firefox :p

      J’ai mis ma musique et fait pointer le mpd.ogg dans un répertoire du Bureau pour être plus tranquille :)

      cela dit, je ne vois rien par exemple dans http://localhost:8008/admin/listmounts.xsl , pourtant même avec un chown etc, on dirait qu’il voit pas mon mountpoint :/

      que faire?

      ps: je crois que tu as fait une faute à la commande « mpdmpd –create-db»  qui devrait être « mpd –create-db»  non? ^^

    6. fraiddo dit :

      tout fonctionne! :p

      seul problème: on arrive à bien me joindre depuis l’extérieur.. mais sans son :/ pourtant leur config est bonne. que se passe t’il?

    7. fraiddo dit :

      réglé :p c’était bien de leurs fautes loul :p

      merci pour tout ;)

    8. fraiddo dit :

      Hep, j’ai une autre question: comment prendre un « live»  au micro directement? Avec GMPC je pense que ce n’est pas possible, que connais-tu comme solution simple?

      Il y a plus d’un an, j’avais une petite webradio avec icecast et mediabox404, mais ça n’avait pas duré très longtemps. Aujourd’hui je découvre les joies d’une webradio dirigée avec des interfaces graphiques :p

    9. fraiddo dit :

      Re :p bon décidemment je fais un monologue là lol :p

      Je viens de tester Darkice, et le live a fonctionné super :)

      Malheureusement, il n’y a pas la possibilité de parler et mettre de la musique tout de suite après, sans couper le flux.

      Connais-tu un soft qui le fais?

    10. AddiKT1ve dit :

      Je n’ai jamais utilisé Darkice, je ne peux pas donc pas t’aider ; cependant je suis content que tes problèmes soient résolus.

      Pour le « mpdmpd»  c’est réglé ; une balise code mal fermée, enfin tu sais ce que c’est ;)

    11. K dit :

      Hi,

      Super article, j’ai un peu galéré sous debian mais au final ça fonctionne =)

      @

    12. K dit :

      Tant que j’y suis, connaîtrais tu un éditeur genre Kompozer (avec visualisation) permettant de modifier les pages .xsl ?
      Histoire de me faire une page d’accueil perso pour icecast …

      Merci

      @

    13. AddiKT1ve dit :

      Cela m’étonnerait que tu puisses visualiser le résultat, étant donné que le xsl est une sorte de xml (j’ai l’impression). Acharne-toi plutôt sur le CSS, à la main, et tu verras rapidement le résultat :D .

    14. K bLog dit :

      MPD + Icecast = WebRadio…

      Je reprends ici un article d’addikT1ve concernant l’utilisation de MPD et de IceCast pour streamer de la musique et ainsi créer sa propre webradio.
      Il va de soit que les morceaux que vous diffuserez via ce procédé seront libres de droits…

    Laisser une réponse