[Authentification] Relais Icecast2 vers Shoutcast

  • Auteur de la discussion ulrich_84
  • Date de début

ulrich_84

Nouveau membre
Bonjour :hello: ,

je souhaiterais pouvoir connecter un serveur Icecast2 (sur une machine en local -192.168.0.2-) vers un serveur Shoutcast (chez un hébergeur -xxx.112.138.24-port: 4848).

Le problème est qu'il faut paramétrer le serveur Icecast2 en relais, mais également que le serveur Shoutcast accepte le flux de donnée provenant du Icecast2.
Le serveur Shoutcast demande un mot de passe pour pouvoir s'y connecter, et dans le fichier de configuration icecast.xml, aucune donné ne se rapporte a cela.

Ou dois-je indiquer le mot de passe du serveur shoutcast ? (j'ai déjà testé plusieurs configuration, lis plusieurs dizaine de sujet un peu partout, le problème est régulièrement exposé mais aucune réponse précise n'est présente ou suffisement détaillé). :??:
(Je précise que tous les ports sont ouverts)

[cpp]
<icecast>
<limits>
<clients>100</clients>
<sources>2</sources>
<threadpool>5</threadpool>
<queue-size>524288</queue-size>
<client-timeout>30</client-timeout>
<header-timeout>15</header-timeout>
<source-timeout>10</source-timeout>
<!-- If enabled, this will provide a burst of data when a client
first connects, thereby significantly reducing the startup
time for listeners that do substantial buffering. However,
it also significantly increases latency between the source
client and listening client. For low-latency setups, you
might want to disable this. -->
<burst-on-connect>1</burst-on-connect>
<!-- same as burst-on-connect, but this allows for being more
specific on how much to burst. Most people won't need to
change from the default 64k. Applies to all mountpoints -->
<burst-size>65535</burst-size>
</limits>

<authentication>
<!-- Sources log in with username 'source' -->
<source-password>hackme</source-password>
<!-- Relays log in username 'relay' -->
<relay-password>hackme</relay-password>

<!-- Admin logs in with the username given below -->
<admin-user>admin</admin-user>
<admin-password>hackme</admin-password>
</authentication>

<!-- Uncomment this if you want directory listings -->
<!--
<directory>
<yp-url-timeout>15</yp-url-timeout>
<yp-url>http://dir.xiph.org/cgi-bin/yp-cgi</yp-url>
</directory>
<directory>
<yp-url-timeout>15</yp-url-timeout>
<yp-url>http://www.oddsock.org/cgi-bin/yp-cgi</yp-url>
</directory>
-->

<!-- This is the hostname other people will use to connect to your server.
It affects mainly the urls generated by Icecast for playlists and yp
listings. -->
<hostname>192.168.0.2</hostname>

<!-- You can use these two if you only want a single listener -->
<!--<port>8001</port> -->
<!--<bind-address>127.0.0.1</bind-address>-->

<!-- You may have multiple <listener> elements -->
<listen-socket>
<port>8001</port>
<!-- <bind-address>127.0.0.1</bind-address> -->
</listen-socket>
<!--
<listen-socket>
<port>8001</port>
</listen-socket>
-->

<!--<master-server>127.0.0.1</master-server>-->
<!--<master-server-port>8001</master-server-port>-->
<!--<master-update-interval>120</master-update-interval>-->
<!--<master-password>hackme</master-password>-->

<!-- setting this makes all relays on-demand unless overridden, this is
useful for master relays which do not have <relay> definitions here.
The default is 0 -->
<!--<relays-on-demand>1</relays-on-demand>-->

<!--
<relay>
<server>127.0.0.1</server>
<port>8001</port>
<mount>/example.ogg</mount>
<local-mount>/different.ogg</local-mount>
<on-demand>0</on-demand>

<relay-shoutcast-metadata>0</relay-shoutcast-metadata>
</relay>
-->

<!-- Only define a <mount> section if you want to use advanced options,
like alternative usernames or passwords
<mount>
<mount-name>/example-complex.ogg</mount-name>

<username>othersource</username>
<password>hackmemore</password>

<max-listeners>1</max-listeners>
<dump-file>/tmp/dump-example1.ogg</dump-file>
<burst-size>65536</burst-size>
<fallback-mount>/example2.ogg</fallback-mount>
<fallback-override>1</fallback-override>
<fallback-when-full>1</fallback-when-full>
<intro>/example_intro.ogg</intro>
<hidden>1</hidden>
<no-yp>1</no-yp>
<authentication type="htpasswd">
<option name="filename" value="myauth"/>
<option name="allow_duplicate_users" value="0"/>
</authentication>
<on-connect>/home/icecast/bin/stream-start</on-connect>
<on-disconnect>/home/icecast/bin/stream-stop</on-disconnect>
</mount>

<mount>
<mount-name>/auth_example.ogg</mount-name>
<authentication type="url">
<option name="mount_add" value="http://myauthserver.net/notify_mount.php"/>
<option name="mount_remove" value="http://myauthserver.net/notify_mount.php"/>
<option name="listener_add" value="http://myauthserver.net/notify_listener.php"/>
<option name="listener_remove" value="http://myauthserver.net/notify_listener.php"/>
</authentication>
</mount>

-->

<fileserve>1</fileserve>

<!-- set the mountpoint for a shoutcast source to use, the default if not
specified is /stream but you can change it here if an alternative is
wanted or an extension is required
<shoutcast-mount>/live.nsv</shoutcast-mount>
-->

<paths>
<!-- basedir is only used if chroot is enabled -->
<basedir>./</basedir>

<!-- Note that if <chroot> is turned on below, these paths must both
be relative to the new root, not the original root -->
<logdir>./logs</logdir>
<webroot>./web</webroot>
<adminroot>./admin</adminroot>
<!-- <pidfile>./icecast.pid</pidfile> -->

<!-- Aliases: treat requests for 'source' path as being for 'dest' path
May be made specific to a port or bound address using the "port"
and "bind-address" attributes.
-->
<!--
<alias source="/foo" dest="/bar"/>
-->
<!-- Aliases: can also be used for simple redirections as well,
this example will redirect all requests for http://server:port/ to
the status page
-->
<alias source="/" dest="/status.xsl"/>
</paths>

<logging>
<accesslog>access.log</accesslog>
<errorlog>error.log</errorlog>
<!-- <playlistlog>playlist.log</playlistlog> -->
<loglevel>4</loglevel> <!-- 4 Debug, 3 Info, 2 Warn, 1 Error -->
<logsize>10000</logsize> <!-- Max size of a logfile -->
<!-- If logarchive is enabled (1), then when logsize is reached
the logfile will be moved to [error|access|playlist].log.DATESTAMP,
otherwise it will be moved to [error|access|playlist].log.old.
Default is non-archive mode (i.e. overwrite)
-->
<!-- <logarchive>1</logarchive> -->
</logging>

<security>
<chroot>0</chroot>
<!--
<changeowner>
<user>nobody</user>
<group>nogroup</group>
</changeowner>
-->
</security>
</icecast> [/cpp]

Pour résumer, je cherche donc à ce que la sortie du flux Icecast2 se redirige vers Shoutcast (Musique > Icecast2 (serveur local) > Shoutcast (hébergeur)> Auditeurs)

Merci d'avance a celui ou celle qui pourra me permettre de trouver la solution. :merci:
 

ulrich_84

Nouveau membre
Personne n'a d'idée de la mise en place de cette configuration ?
 

Cedupropre

Nouveau membre
Salutation

Je sais que je viens un peu tard avec une solution, c'est par hasard que je suis tombé sur ce sujet.

Icecast2 peut relayer un serveur SHOUTcast, mais malheureusement pas l'inverse. La seule solution qui pourrait marcher est de mettre un player entre les deux (...Icecast2 > player > SHOUTcast...). Sous Linux il y a les solutions Liquidsoap, MPD ou même XMMS2 (je crois) qui peuvent aider. Sous Windows j'ai un peu moins d'idée... peut-être Winamp avec le plug-in Oddcast, ou VLC qui je crois permet aussi d'envoyer du son vers un serveur Ice/SHOUTcast... Mais l'idée est là quoi. Perso c'est cette méthode (avec Liquidsoap) que j'utilise et ça marche bien.

Voilà j'espère que ça t'aura aidé ;)

Bonne continuation et @+

Ced ^_^
 

jduffas

Nouveau membre
bonjour,

le problème avec cette solution est que liquidsoap semble réencoder le flux... chose inutile si on souhaite faire juste un relai.
 

Cedupropre

Nouveau membre


C'est pas faux :/ et Liquidsoap n'est pas le seul à poser ce problème à mon avis, tous les autres players aussi :/ Malheureusement, j'ai longtemps cherché (et je cherche encore) une solution qui ne réencode pas le flux mais jamais trouvé :( Enfin, je continue à chercher ;)

Ced ^_^
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 128
Messages
6 717 843
Membres
1 586 372
Dernier membre
Meeithot
Partager cette page
Haut