Peercast, streaming en P2P
Le projet Peercast n’est malheureusement plus maintenu depuis ~ 2008.
Ce document s’applique à la version 0.1210 de Peercast, principalement sous Linux :)
Peercast est un système de diffusion d’un flux (audio ou vidéo) par streaming, comme le sont Icecast ou bien Shoutcast. Il permet donc de diffuser des radios ou des télévisions en direct sur Internet, pour un ensemble d’auditeurs.
Là où Peercast se différencie des autres systèmes, c’est dans la méthode de diffusion du flux. Il repose en effet sur un réseau de type peer-2-peer pour diffuser les flux vers les auditeurs. Ainsi, le simple fait d’écouter une radio sur le réseau Peercast permet de partager sa bande passante pour qu’une (ou plusieurs) personne(s) puissent à leur tour écouter cette même radio… et ainsi de suite. Il n’y a donc plus une seule “source” supportant l’ensemble des auditeurs comme dans les réseaux classiques, mais un ensemble de noeuds qui sont à la fois “auditeurs” et “relais”.
Fonctionnalités
Diffusion de flux MP3, OGG, WMA, WMV et NSV.
Configuration via un simple navigateur web (interface HTML) et via une icone dans la barre des taches (Windows uniquement)
Compatible avec l’ensemble des lecteurs du marché : WinAMP, XMMS…
Open source, aucun spyware/adware
Installation sous Linux
Téléchargement du fichier peercast-linux.tgz dans le répertoire courant.
~/$ wget http://www.peercast.org/peercast-linux.tgz
Création d’un répertoire peercast pour stocker les fichiers de celui-ci
~/$ mkdir peercast
~/$ cd peercast
Hop, on extrait Peercast dans ce répertoire et on rend le fichier peercast exécutable
~/peercast$ tar xvzf ../peercast-linux.tgz
~/peercast$ chmod u+x peercast
Lancement de Peercast. La commande nohup permet de lancer peercast en tache de fond, sans que la fermeture de la session ne stoppe celui-ci (pratique notamment sur un serveur via une session SSH).
~/peercast$ nohup peercast &
Peercast est maintenant actif ! Simple non ? Il suffit ensuite d’aller faire un tour sur http://localhost:7144/ pour accéder à l’interface web de Peercast. C’est depuis cette interface que l’on accède à l’ensemble des options et fonctions de Peercast.
Comment ca marche?
Première étape : mettre l’interface en bon français ;). Pour cela, il faut se rendre dans l’interface Web, puis cliquer sur Settings et mettre le Language sur French. Un clique sur le bouton Save settings et voila l’interface francisée.
Faisons un petit tour d’horizon des différents onglets présents en haut de la page :
Information : différentes statistiques sur la bande passante utilisée, l’état du serveur ainsi que les connections en cours.
Pages Jaunes : l’annuaire qui référence l’ensemble des radios/tvs disponibles sur le réseau. Pour la suite, voir la section intitulée « Onglet Pages Jaunes »
Relais : affiche les flux qui sont actuellements relayés par notre noeud. Plus de détails : la section intitulée « Onglet Relais »
Diffuser : permet de diffuser son propre flux ! Voir la section intitulée « Diffuser votre propre radio »
Connections : un affichage plus détaillé des connections en cours.
Préférences : toute la configuration de Peercast se fait ici.
Voir les journaux : rien de bien passionnant :)
Quitter : hum… à quoi cela peut-il servir ?
Ecouter une radio /TV
Onglet Pages Jaunes
Dans l’onglet Pages Jaunes, vous pouvez accéder à l’annuaire de Peercast qui recense l’ensemble des flux disponibles sur le réseau Peercast. Vous pouvez effectuer une recherche pour retrouver une radio à partir de son nom. Vous pouvez également filtrer la liste par genre, par débit ou encore par type (audio ou vidéo).
Le tableau contient la liste des flux correspondants à la recherche (par défaut tous). Les colonnes du tableau sont les suivantes :
Rank : Classement
Play : Lien pour le lancement du flux
Channel : Description du flux, morceau en cours, lien vers un site d’information
Listeners / Relays : nombre d’auditeurs / nombre de relais. Si le nombre de relais est faible, il sera sans doute difficile d’écouter ce flux
Bitrate : débit nécessaire pour l’écoute de ce flux. Attention, il est indiquer en kilo-bits par secondes
Type : format de diffusion, audio (OGG, MP3, WMA) ou vidéo (WMV, NSV, OGM)
Les flux sont triés par ordre décroissant d’auditeurs. Un clic sur un des liens « Play » suffit pour lancer l’écoute de la radio en question. N’hésitez pas à écouter les radios disponibles, vous aurez sûrrement de bonnes surprises en découvrant la musique que diffusent les radios japonaises (en effet, une majorité d’utilisateurs du réseau Peercast sont japonais).
Il se peut que Peercast mette un peu de temps à « trouver » la radio en question. Il peut y avoir plusieurs raisons : la source ne diffuse plus, il n’y a plus de relais avec assez de bande passante ou bien encore un problème de connexion de votre noeud. Si vous n’arrivez à écouter aucun des flux, les forums de Peercast sont remplis de gens compétents et accueillants.
Onglet Relais
La liste des flux en cours d’écoute ainsi que ceux écoutés récemment sont accessibles via l’onglet Relais. Cet onglet liste en fait les flux dont vous connaissez l’existance. Ces derniers peuvent avoir plusieurs états :
SEARCH : votre noeud Peercast est entrain de rechercher des relais pour télécharger le flux en question.
RECEIVE : vous recevez ce flux en ce moment, soit parce que vous l’écouter, soit parce que vous avez cliquez sur Garder (ce qui rend le flux permament = vous télécharger ce flux même sans l’écouter).
IDLE : vous n’écoutez plus ce flux en ce moment, donc Peercast n’est plus connecté à celui-ci (mais il le garde en mémoire). Le lien Stop permet de stopper ce flux (si il est en écoute) et de le supprimer de la liste
ERROR : impossible pour votre noeud Peercast de ce connecter à un relai pour ce flux, le plus souvent il s’agit de la source d’origine qui ne fonctionne plus ;( Le lien Bump permet d’indiquer que l’on souhaite forcer Peercast à « sauter » le relai actuel pour ce flux. Cela permet de relancer une recherche pour retrouver une écoute de meilleure qualité.
BROADCAST : vous diffusez votre propre flux. Vous êtes la source ! Pour plus de détails, voir la section intitulée « Diffuser votre propre radio »
Diffuser votre propre radio
Le rêve de n’importe quel DJ’s en herbe non ? Mais l’on revient souvent sur terre en jetant un coup d’oeil sur les prix pratiqués pour disposer d’un serveur supportant les connections de plusieurs dizaines d’auditeurs… Peercast essaye de fournir une solution à ce problème en permettant de diffuser à plusieurs centaines de personnes un flux de très bonne qualité (56 Kbps pour de l’Ogg Vorbis ou 128 Kbps pour du MP3) et ceci avec une simple ligne ADSL.
Onglet Diffuser
Pour des besoins simples, Peercast se suffit à lui-même pour profiter de ce médium qu’est le p2p. Peercast peut très facilement diffuser votre playlist. En passant par l’onglet Diffuser vous pourrez indiquer à Peercast ce qu’il faut diffuser. Il suffit de remplir les champs :
URL : l’endroit depuis lequel Peercast doit lire puis diffuser. Ce peut être une URL vers un serveur Icecast (sous la forme ‘’http://
<mon_ip>
:<mon_port>
/<flux>
ou bien pour un fichier local ’‘/home/usermrx/mp3/playlist.m3u’‘)Nom : Le nom de la station tel qu’il sera publier sur l’annuaire Peercast
Description : Une description du flux (~ 50 caractères) - facultafif
Genre : Genre de la station - facultafif
Contact : Lien vers un site d’information - facultafif
Bitrate : Débit de la station - facultafif
Type : Choisissez le type de flux diffusé Comme vous avez pu le lire, vous pouvez indiquer à Peercast de lire un fichier playlist (préparé avec WinAMP ou XMMS) de type m3u. C’est Peercast qui s’occupera de parcourir la playlist pour ensuite lire les fichiers et effectuer la diffusion des fichiers aux auditeurs. Attention, il faut que le fichier m3u contienne le chemin d’accès absolu des fichiers (= ‘’/data/mp3/mon_fichier.mp3’‘) (i.e. pas un chemin d’accès relatif = ’‘./mon_fichier.mp3’‘), voir pour cela les options de votre logiciel :) Un clic sur Diffuser et hop votre radio est disponible sur le net !
Diffusion en live
Bientôt…