1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Icecast: Fallback konfigurieren?

Dieses Thema im Forum "Internetradio- und Heimstudio-Software" wurde erstellt von Orbit, 17. Mai 2008.

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. Orbit

    Orbit Benutzer

    Bevor ich darauf hingewiesen werde die Suche zu benützen, das hab ich schon. :D
    Könnte mir jemand genau sagen, wie ich die Fallback-Funktion von Icecast einstellen kann?
    Bei mir läuft auf einem Windows-Server ganz normal Icecast2. Und die Input-Quelle für die Musik ist Winamp mit einem Plugin. Nun läuft auch ganz normal der Stream.
    Nur, wenn ich nun den Stream von der Playliste stoppen will, also disconnecte und vom PC aus z.B. live senden will, dann wird der Zuhörer rausgeschmissen. Und das auch, wenn der Mountpoint den gleichen Namen hat.
    Mit Fallback von Icecast müsste ja das Problem zu beheben sein. Nur wie genau stelle ich das in der Config ein? Könnte jemand sagen, was wie eingestellt werden muss, damit der Wechsel zwischen Streamserver und Streampc reibungslos klappt?

    Das wäre die aktuelle Config von Icecast2
    Code:
    <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>xxxxx</source-password>
            <!-- Relays log in username 'relay' -->
            <relay-password>xxxxxx</relay-password>
    
            <!-- Admin logs in with the username given below -->
            <admin-user>admin</admin-user>
            <admin-password>xxxxxx</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>localhost</hostname>
    
        <!-- You can use these two if you only want a single listener -->
        <!--<port>8000</port> -->
        <!--<bind-address>127.0.0.1</bind-address>-->
    
        <!-- You may have multiple <listener> elements -->
        <listen-socket>
            <port>8000</port>
            <!-- <bind-address>127.0.0.1</bind-address> -->
        </listen-socket>
        <!--
        <listen-socket>
            <port>8000</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>xxxxx</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>0</relays-on-demand>-->
    
        <!--
        <relay>
            <server>127.0.0.1</server>
            <port>8001</port>
            <mount>/stream.ogg</mount>
            <local-mount>/stream.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>xxxxx</password>
    
            <max-listeners>64</max-listeners>
            <dump-file>/tmp/dump-example1.ogg</dump-file>
            <burst-size>65536</burst-size>
            <fallback-mount>/stream.ogg</fallback-mount>
            <fallback-override>1</fallback-override>
            <fallback-when-full>1</fallback-when-full>
            <intro>/example_intro.mp3</intro>
            <hidden>0</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>
    
     
  2. dea

    dea Benutzer

    AW: Icecast: Fallback konfigurieren?

    Lieber Kollege,

    offensichtlich bist du mit XML nicht ganz geübt. Eine solche Datei bearbeitest
    am besten zunächst erst einmal mit einem vernüftigen Editor, der Syntaxhighlighting beherrscht.

    Dann wirst du sehen, dass in deinem Configfile mehrere Sektionen zur Definition
    der Serverfunktionalität auskommentiert sind - beim Start also gar nicht
    gelesen werden. Das betrifft u.a. auch den Fallbackbereich.
    Da wir ansonsten nicht wissen, ob die übrigen Einstellungen der Encoder und
    Streams soweit korrekt sind, ist also erst einmal nur an der Config ganze Arbeit
    zu leisten und vielleicht ist dein Problem dann schon gelöst.

    Ein Tipp noch: Man sollte in der Datei auch nur aufbewahren, was zum Betrieb
    des Servers notwendig ist. Kilobyteweise auskommentierte Default-Einstellungen
    machen die Arbeit unnötig schwer.
     
  3. Orbit

    Orbit Benutzer

    AW: Icecast: Fallback konfigurieren?

    Danke erstmal für den Tipp mit dem Auskommentieren. :D Habe nun den Bereich für Fallback auskommentiert, ansonsten hab ich nix verändert. Nur dann startet der Server nicht mit dieser Meldung:
    FATAL: error parsing config file (.\icecast.xml)

    Was habe ich also hier falsch bzw. wie muss ich das einstellen?
    Code:
        <mount>
            <mount-name>/example-complex.ogg</mount-name>
    
            <username>xxx</username>
            <password>xxx</password>
    
            <max-listeners>64</max-listeners>
            <dump-file>/tmp/dump-example1.ogg</dump-file>
            <burst-size>65536</burst-size>
            <fallback-mount>/stream.ogg</fallback-mount>
            <fallback-override>1</fallback-override>
            <fallback-when-full>1</fallback-when-full>
            <intro>/example_intro.ogg</intro>
            <hidden>0</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>
    
     
  4. Inselkobi

    Inselkobi Benutzer

    AW: Icecast: Fallback konfigurieren?

    Prima, was willst Du denn noch mehr?
    Sollte er denn mit einer Fehlermeldung starten? :rolleyes:
     
  5. Orbit

    Orbit Benutzer

    AW: Icecast: Fallback konfigurieren?

    Hab mich etwas vertippt. Das "nicht" gehört natürlich nicht dorthin :D :D :D
     
  6. Pegasus

    Pegasus Benutzer

    AW: Icecast: Fallback konfigurieren?

    Dann ist dein XML-File nicht wohlgeformt. Da du ja sicher den Tip mit dem anständigen Editor von Dea gefolgt bist, siehst du ja, wo der Fehler liegt.

    Und so nebenbei, an dem, von dir geposteten, Teil des Files liegt es nicht.
     
  7. Orbit

    Orbit Benutzer

    AW: Icecast: Fallback konfigurieren?

    So, es lag an einem Text, der vorher auskommentiert war. Blöder Fehler von mir. So, nun startet zwar alles, aber das klappt noch nicht so, wie ich es möchte. Also ich sende z.B. über den Stream namens live.ogg und möchte, sobald der stoppt, dass der Stream mit dem Namen stream.ogg weiter gehört wird. Umgekehrt dann natürlich auch. Nur will das nicht klappen. Hier nun die aktuelle Config:

    Code:
    <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>xxxx</source-password>
            <!-- Relays log in username 'relay' -->
            <relay-password>xxxx</relay-password>
    
            <!-- Admin logs in with the username given below -->
            <admin-user>admin</admin-user>
            <admin-password>xxxxx</admin-password>
        </authentication>
    
    
        <!-- 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>localhost</hostname>
    
    
        <!-- You may have multiple <listener> elements -->
        <listen-socket>
            <port>8000</port>
            <!-- <bind-address>127.0.0.1</bind-address> -->
        </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>xxxx</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>0</relays-on-demand>-->
    
        
    
        <mount>
            <mount-name>/example-complex.ogg</mount-name>
    
            <username>othersource</username>
            <password>xxxx</password>
    
            <max-listeners>64</max-listeners>
            <dump-file>/tmp/dump-example1.ogg</dump-file>
            <burst-size>65536</burst-size>
            <fallback-mount>/stream.ogg</fallback-mount>
            <fallback-override>1</fallback-override>
            <fallback-when-full>1</fallback-when-full>
            <intro>/example_intro.ogg</intro>
            <hidden>0</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>
    
     
  8. Pegasus

    Pegasus Benutzer

    AW: Icecast: Fallback konfigurieren?

    Du hast das hier immer noch nicht gelesen obwohl der Thread ganz oben steht und einen eindeutigen Titel hat. Wenn du ihn gelesen hast, beachtest du ihn nicht, was wohl noch schlimmer ist.
     
  9. Orbit

    Orbit Benutzer

    AW: Icecast: Fallback konfigurieren?

    Hmm... gelesen hab ich ihn nun. Verstehe aber nicht, worauf du hinaus willst. Config zu lang oder keine genauen Angaben zur Versionsnummer?

    Also Betriebssystem ist Windoof Server 2003 mit SP1. Es läuft das ganz normale Winamp, daran wird es wohl nicht liegen. Und icecast ist die neueste Version, gestern runtergeladen.
     
  10. Pegasus

    Pegasus Benutzer

    AW: Icecast: Fallback konfigurieren?

    Zu 6.
    ist keine Problembeschreibung, von genau red ich erst gar nicht. Da gehören Bildschirmausgaben, genaue Auswirkungen des Problems, was du wie genau probiert hast usw. hin.
     
  11. Orbit

    Orbit Benutzer

    AW: Icecast: Fallback konfigurieren?

    So, die letzten Einträge der Error-Log
    Code:
    [2008-05-18  13:05:18] DBUG stats/stats.c update node total_bytes_sent (0)
    [2008-05-18  13:05:18] INFO source/source.c Source "/stream.ogg" exiting
    [2008-05-18  13:05:18] DBUG source/source.c clearing source "/stream.ogg"
    [2008-05-18  13:05:18] DBUG source/source.c freeing source "/stream.ogg"
    [2008-05-18  13:05:18] DBUG connection/connection.c Connection thread done
    [2008-05-18  13:05:18] INFO main/main.c Shutting down
    [2008-05-18  13:05:18] INFO fserve/fserve.c file serving thread stopped
    [2008-05-18  13:05:18] DBUG slave/slave.c waiting for slave thread
    [2008-05-18  13:05:18] DBUG slave/slave.c shutting down current relays
    [2008-05-18  13:05:18] INFO slave/slave.c Slave thread shutdown complete
    [2008-05-18  13:05:18] DBUG stats/stats.c delete source node /stream.ogg
    [2008-05-18  13:05:18] DBUG stats/stats.c update node clients (0)
    [2008-05-18  13:05:18] DBUG stats/stats.c update node sources (0)
    [2008-05-18  13:05:18] DBUG stats/stats.c delete source node /example-complex.ogg
    [2008-05-18  13:05:18] INFO auth/auth.c Authenication thread shutting down
    [2008-05-18  13:05:18] INFO auth/auth.c Auth thread has terminated
    [2008-05-18  13:05:19] INFO yp/yp.c YP thread down
    [2008-05-18  13:05:19] INFO stats/stats.c stats thread finished
    [2008-05-18  13:05:19] INFO auth_url/auth_url.c Doing auth URL cleanup
    Access Log wird denke ich mal nicht viel bringen. Es gibt bei mir kein Problem. Ich möchte nur, dass ein User nicht vom Stream geschmissen wird, wenn ich eine Live-Sendung von meinem PC aus halte. Also Beispiel:
    Stream A läuft ganz normal vom Server.
    Nun schalte ich meine Sendung live vom Computer ein und der User müsste sich neu verbinden mit dem anderen Mountpoint. Das möchte ich vermeiden.
     
  12. Pegasus

    Pegasus Benutzer

    AW: Icecast: Fallback konfigurieren?

    Hast du geprüft ob es an der Authorisierung liegt? Die URLs und der entsprechende Monutpoint sehen IMO so nach "Beispiel" aus.
     
  13. Orbit

    Orbit Benutzer

    AW: Icecast: Fallback konfigurieren?

    Was genau meinst du denn?

    Authorisierung das?
    Da stimmen soweit alle Daten.

    Die Sache mit den URLs und dem Mountpoint versteh ich auch nicht wirklich, daher hab ich die nicht geändert. Wäre gut, wenn du mir sagen kannst bzw. erklären, was wie geändert werden soll
     
  14. Pegasus

    Pegasus Benutzer

    AW: Icecast: Fallback konfigurieren?

     
  15. dea

    dea Benutzer

    AW: Icecast: Fallback konfigurieren?

    So. Ich habe nun den ganzen Nachmittag herumgedoktort und für Leute, die selbst das
    Icecast-Forum weder finden noch lesen können/wollen, geschaut, was sich machen lässt.

    Im Grunde ist es wie immer zwar grundsätzlich einfach, jedoch gibt es Icecast-Tücken,
    von denen ich bis eben auch nichts wusste und die dafür sorgen können, dass nicht
    einmal die Config gelesen werden kann.

    1. Ist die Variante der Definition eines ShoutCast-kompatiblen Mounts
    entgegen der Empfehlung im Icecast-Forum bei Icacast 2.3.1 in dieser Weise (Beispiel)
    Code:
    <listen-socket>
        <port>8000</port>
        <shoutcast-mount>/autoplay</shoutcast-mount>
    </listen-socket>
    NICHT möglich! Der Versuch führt zu einem XML-Parser-Fehler.
    Richtig geht es nur so wie im großen Beispiel weiter unten.

    2. Der Icecast kann auch nicht zweit ShoutCast-Sources gleichzeitig verwursten.
    Auch dann nicht, wenn die entsprechenden Mounts richtigerweise verschiedene Ports zugewiesen bekommen.
    Zwei Icecast-Sources dagegen funktionieren (und noch mehr).
    Demnach muss man sich bei der beliebten und gut funktionieren Fallbacklösung
    vorher im Klaren sein, welche Typen die Sources haben sollen.
    Ich habe mich bei meinen Experimenten auf die bei Webradios übliche
    Situation konzentriert:
    Es läuft ein Transcast (automatische Playlist) und der Moderator "verdrängt"
    diesen, wenn er "OnAir" geht. Verlässt dieser den Server nach seiner Sendung
    wieder, soll der Transcast weiter für die Hörer spielen.

    Soweit ich informiert bin, kann der Transcast (sc_trans) nicht als Icecast-Source arbeiten.
    Die folgende Konfiguration setzt deshalb einen laufenden Shoutcast-Server voraus,
    der von sc_trans "bespielt" wird. Der Icecast dient als Relay und der
    Relaymountpoint ist der Fallbackpoint für den Livestream.
    Der Livestream ist so konfiguriert, dass er ShoutCast-kompatibel ist und somit
    den Moderatoren größtmögliche Freiheit bei der Wahl ihrer Streamingsoftware lässt.
    Die nachfolgende Config ist SO auch nicht für OGG-Streams geeignet.
    (Ich mag diese unmöglichen synthetischen Streams wie OGG oder AAC/+ nicht.)
    Sollte das nötig sein: entsprechend reine Icecast-Mounts verwenden.

    Ich poste hier jetzt auch nur die Mount-Definitionen entsprechend der obigen
    Beschreibung. Alle weiteren Einstellungen haben mit der Funktionalität nicht
    viel zu tun. Nur eins noch: 64 KB bei <burst-on-connect> sind 65536 bytes.
    Das sollte man immer entsprechend richtig eintragen, denn da steht 65535 per default - warum auch immer.

    Code:
    <!-- This mount is for taking connects from external
         ShoutCast-sources (i.e. moderators stream) -->
        <mount>
            <mount-name>/live</mount-name>
            <fallback-mount>/autoplay</fallback-mount>
            <fallback-override>1</fallback-override>
            <public>0</public>
            <max-listeners>64</max-listeners>
            <stream-name>live</stream-name>
            <stream-description>-</stream-description>
            <genre>live</genre>
            <hidden>0</hidden>
            <mp3-metadata-interval>163840</mp3-metadata-interval>
        </mount>
        <listen-socket>
            <port>8000</port>
        </listen-socket>
        <shoutcast-mount>/live</shoutcast-mount>
        <listen-socket>
            <port>8001</port>
            <shoutcast-compat>1</shoutcast-compat>
        </listen-socket>
    
    <!-- This mount acts as a relay and takes the
         stream from a ShoutCast-Server (i.e. a TransCast) -->
        <mount>
            <mount-name>/autoplay</mount-name>
            <public>0</public>
            <max-listeners>64</max-listeners>
            <stream-name>autoplay</stream-name>
            <stream-description>-</stream-description>
            <genre>autoplay</genre>
            <hidden>1</hidden>
            <mp3-metadata-interval>163840</mp3-metadata-interval>
        </mount>
        <relay>
            <server>127.0.0.1</server>
            <port>8006</port>
            <mount>/</mount>
            <local-mount>/autoplay</local-mount>
            <on-demand>0</on-demand>
            <relay-shoutcast-metadata>1</relay-shoutcast-metadata>
        </relay>
    Ich hoffe, insoweit geholfen zu haben. Die richtige Konfiguration der Ordner
    und Dateien sowie Authentifizierung etc. sollte nun weiss Gott jeder selbst
    hinbekommen können. Muss man wohl auch, denn hier weiss keiner, wie es
    auf fremden Festplatten aussieht.
     
  16. Orbit

    Orbit Benutzer

    AW: Icecast: Fallback konfigurieren?

    Danke erstmal für den Ausschnitt aus der Config. Die Lösung scheint genau die zu sein, die ich suche. Aber ich brauche keinen Extra Shoutcast also das SC_trans. Ich nutze ganz einfach Winamp mit dem Plugin Edcast von hier http://www.oddsock.org/tools/

    Zu der authentication. So wie ich die Dokumentation verstanden habe, ist dies nur nötig, wenn man einen Passwortschutz einstellen möchte für die Zuhörer. Das brauch ich ja nicht, da ich öffentlich sende. Daher hab ich das mal entfernt:
    Code:
        <mount>
            <mount-name>/auth_example.ogg</mount-name>
            <authentication type="url">
                <option name="mount_add"       value="http://ms1.ztk-hosting.de/notify_mount.php"/>
                <option name="mount_remove"    value="http://ms1.ztk-hosting.de/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>
    Mit der Config von dea sieht meine Config nun so aus:
    Beim Wechsel hab ich das nun so versucht, dass ich den Winamp-Player auf dem Server pausiere und währenddessen starte ich meinen Player auf dem Windowsrechner und connecte natürlich. Nur wird der User leider immer noch rausgeschmissen. Was mach ich denn falsch?
    Der Mountpoint vom Server heißt nun autoplay.ogg und der auf meinem Rechner ist live.ogg, eben wie in der Config. :confused:
     
  17. dea

    dea Benutzer

    AW: Icecast: Fallback konfigurieren?

    Wenn die Parameter nicht angepasst werden und du dem Server sogar die notwendigen
    Identitäten klaust, indem du <authentication>...</authentication> entfernst, kann GAR NICHTS gehen!

    Lies bitte die Dokumentation, bevor du hier weiter Fragen stellst. Wir sind keine Wahrsager! :wall:

    Und jetzt geh' ich meine Herztropfen nehmen.
     
  18. Orbit

    Orbit Benutzer

    AW: Icecast: Fallback konfigurieren?

    :confused: Die Doku hab ich ja schon gelesen. Wenn mir jemand per Messenger helfen kann: icq 434-835-497
     
  19. Orbit

    Orbit Benutzer

    AW: Icecast: Fallback konfigurieren?

    Endlich ist das Problem gelöst! Es musste einfach alles unnötige weg. Danach habe ich folgenden Code hinzugefügt und Voila!

    Daher kann hier geschlossen werden :D
     
  20. dea

    dea Benutzer

    AW: Icecast: Fallback konfigurieren?

    Bezug nehmend auf diesen Beitrag möchte ich korrigierend
    anmerken, dass seit einigen Tagen nunmehr die Version 2.3.2 des Icecast
    Mediaservers verfügbar ist und sich bezüglich der Aussagen zum Handling
    mehrer Shoutcast-Sources und auch ihrer Deklaration in der Konfigurationsdatei
    die richtigen Änderungen ergeben haben. Diese sind im Detail:

    1. Können jetzt mehrere Shoutcast-Sources auf einen einzigen Icecast streamen.
    Der Vorteil darin besteht besonders bei der Benutzung von Fallback, dass Playlisten
    (Transcasts) künftig keinen Shoutcast-Server mehr benötigen, der relayed
    werden muss.

    2. Werden Shoutcast-kompatible Ports ab sofort so deklariert (Beispiel):
    Code:
        <mount>
            <mount-name>/autoplay</mount-name>
            <public>0</public>
            <max-listeners>50</max-listeners>
            <stream-name>autoplay</stream-name>
            <stream-description>-</stream-description>
            <genre>autoplay</genre>
            <hidden>1</hidden>
            <mp3-metadata-interval>163840</mp3-metadata-interval>
        </mount>
        <listen-socket>
            <port>8010</port>
            <shoutcast-mount>/autoplay</shoutcast-mount>
        </listen-socket>
    Es erfolgt also zuerst eine Deklaration eines Mountpoints. Anschließend wird
    dessen Listener-Port festgelegt, wobei innerhalb dieser Festlegung die Anweisung
    an den Server erfolgt, den entsprechenden Port+1 für Shoutcast-Quellen mit zu öffnen.
    Die "alte" Methode (shoutcast-compat...) ist somit hinfällig.

    Einen Pferdefuß gibt es allerdings dafür wieder:
    Fällt Fallback auf einen "hidden" Mountpoint, wie er im obigen Beispiel deklariert
    ist, so verschwindet der Ursprungs-Mount ebenfalls von der Status-Seite.
    Wer also diese Variante benutzt, muss dafür Sorge tragen, dass Links auf
    diese Mounts unabhängig von den Icecast-Seiten zur Verfügung stehen.
    Aber wer Icecast verwendet, wird das wohl sowieso gewohnt sein. ;)
     

Status des Themas:
Es sind keine weiteren Antworten möglich.

Diese Seite empfehlen