Установка IceCast на Ubuntu
Автор: admin Раздел: Как настроить Ubuntu
Как-то вот я раньше, в одной из моих интереснейших статей был мной описан(написан) процесс о том как установить сервер потокового вещания на Ubuntu – IceCast.
Сейчас вот я опишу всю настройку IceCast на Unubtu: 1. И так, начнем: Сначало заподим в системе одну группу вот такую icecast и еще пользователя вот такого icecast для работы этого сервиса на сервере(компьютере): # sudo groupadd icecast # sudo useradd -g icecast -d /home/icecast -s /sbin/nologin icecast 2. Далее займемся вот редактированием конфигурации этого IceCast. И находится вот он тут /etc/icecast2/icecast.xml . Открываем вот этим редактором, и изменяем всё(всё то, что считаем нужным изменить): Code: nano /etc/icecast2/icecast.xml <icecast> <limits>… //Кол-во слушателей он-лайн <clients>1000</clients> <sources>5</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>131070</burst-size> </limits> //Тут Ваши пароли <authentication> <!– Sources log in with username ’source’ –> <source-password>паророль_для_вещания</source-password> <!– Relays log in username ‘relay’ –> <relay-password>passw</relay-password> //Пароли админа <!– Admin logs in with the username given below –> <admin-user>admin</admin-user> <admin-password>pass</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> –> //Настройка сервера <!– Адрес сервера. Используется пользователями для подключения к серверу –> <hostname>mt.radio.loacl.wp</hostname> <!– You can use these two if you only want a single listener –> <!–<port>9500</port> –> <!–<bind-address>127.0.0.1</bind-address>–> <!– You may have multiple <listener> elements –> <listen-socket> <port>9500</port> <!– <bind-address>127.0.0.1</bind-address> –> </listen-socket> <!– <listen-socket> <port>9501</port> </listen-socket> –> <!–<master-server>127.0.0.1</master-server>–> <!–<master-server-port>9501</master-server-port>–> <!–<master-update-interval>120</master-update-interval>–> <!–<master-password>master-pass</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 (вещание другой радисостанции через Ваш сервер) <relay> <server></server> <port>7284</port> <mount>/</mount> <local-mount>/nonstop</local-mount> <on-demand>0</on-demand> <relay-shoutcast-metadata>1</relay-shoutcast-metadata> </relay> <relay> <server>all.stream.realradio.com</server> <port>8010</port> <mount>/</mount> <local-mount>/playlist2</local-mount> <on-demand>0</on-demand> <relay-shoutcast-metadata>1</relay-shoutcast-metadata> </relay> <relay> <server> mt.radio.loacl.wp </server> <port>9500</port> <mount>/</mount> <local-mount>/nonstop</local-mount> <on-demand>0</on-demand> <relay-shoutcast-metadata>1</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://realradio.local/notify_mount.php”/> <option name=”mount_remove” value=”http:// realradio.local /notify_mount.php”/> <option name=”listener_add” value=”http:// realradio.local /notify_listener.php”/> <option name=”listener_remove” value=”http:// realradio.local /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>/usr/share/icecast2</basedir> <!– Note that if <chroot> is turned on below, these paths must both be relative to the new root, not the original root –> <logdir>/var/log/icecast2</logdir> <webroot>/usr/share/icecast2/web</webroot> <adminroot>/usr/share/icecast2/admin</adminroot> <pidfile>/usr/share/icecast2/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>icecast2</user> <group>icecast2</group> </changeowner> </security> –> </icecast> А теперь выставляем нужные вот права: chown root:root /etc/icecast2/icecast.xml chmod 640 /etc/icecast2/icecast.xml Затем запускаем вот сервер: icecast -b -c /etc/icecast2/icecast.xml Ну вобще-то настройкой(сконфигурированием) я вот занимался месяца эдак два или три назад, сервер ксажалению вот не мой оказался. И вот появилась такая вот интересная возможность. |